TPTP Problem File: PRO020^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : PRO020^1 : TPTP v8.2.0. Released v7.0.0.
% Domain   : Processes
% Problem  : Process algebra 50
% Version  : [Bla16] axioms : Especial.
% English  :

% Refs     : [BH+14] Blanchette et al. (2014), Truly Modular (Co)datatypes
%          : [RB15]  Reynolds & Blanchette (2015), A Decision Procedure for
%          : [Bla16] Blanchette (2016), Email to Geoff Sutcliffe
% Source   : [Bla16]
% Names    : process__50.p [Bla16]

% Status   : Theorem
% Rating   : 1.00 v7.1.0
% Syntax   : Number of formulae    :  314 ( 107 unt;  48 typ;   0 def)
%            Number of atoms       :  918 ( 292 equ;   8 cnn)
%            Maximal formula atoms :   31 (   3 avg)
%            Number of connectives : 5087 (  50   ~;  12   |;  59   &;4633   @)
%                                         (   0 <=>; 333  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   31 (  10 avg)
%            Number of types       :    2 (   1 usr)
%            Number of type conns  : 1357 (1357   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   51 (  47 usr;   5 con; 0-14 aty)
%            Number of variables   : 1577 ( 207   ^;1292   !;  18   ?;1577   :)
%                                         (  60  !>;   0  ?*;   0  @-;   0  @+)
% SPC      : TH1_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2016-07-13 14:39:42.704
%------------------------------------------------------------------------------
%----Could-be-implicit typings (4)
thf(ty_t_Process__Mirabelle__xovoopgpgi_Oprocess,type,
    proces634752977rocess: $tType > $tType ).

thf(ty_t_Set_Oset,type,
    set: $tType > $tType ).

thf(ty_t_itself,type,
    itself: $tType > $tType ).

thf(ty_tf_a,type,
    a: $tType ).

%----Explicit typings (44)
thf(sy_cl_HOL_Otype,type,
    type: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Olattice,type,
    lattice: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_cl_Lattices_Osemilattice__sup,type,
    semilattice_sup: 
      !>[A: $tType] : ( ( itself @ A ) > $o ) ).

thf(sy_c_BNF__Def_Oeq__onp,type,
    bNF_eq_onp: 
      !>[A: $tType] : ( ( A > $o ) > A > A > $o ) ).

thf(sy_c_BNF__Def_Orel__fun,type,
    bNF_rel_fun: 
      !>[A: $tType,C: $tType,B: $tType,D: $tType] : ( ( A > C > $o ) > ( B > D > $o ) > ( A > B ) > ( C > D ) > $o ) ).

thf(sy_c_Complete__Partial__Order_Omonotone,type,
    comple1396247847notone: 
      !>[A: $tType,B: $tType] : ( ( A > A > $o ) > ( B > B > $o ) > ( A > B ) > $o ) ).

thf(sy_c_Fun_Oid,type,
    id: 
      !>[A: $tType] : ( A > A ) ).

thf(sy_c_Fun_Omap__fun,type,
    map_fun: 
      !>[C: $tType,A: $tType,B: $tType,D: $tType] : ( ( C > A ) > ( B > D ) > ( A > B ) > C > D ) ).

thf(sy_c_If,type,
    if: 
      !>[A: $tType] : ( $o > A > A > A ) ).

thf(sy_c_Lattices_Osup__class_Osup,type,
    sup_sup: 
      !>[A: $tType] : ( A > A > A ) ).

thf(sy_c_Partial__Function_Ofun__ord,type,
    partial_fun_ord: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > $o ) > ( C > A ) > ( C > B ) > $o ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_OAction,type,
    proces1525233512Action: 
      !>[A: $tType] : ( A > ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_OChoice,type,
    proces1915862579Choice: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Ocase__process,type,
    proces1406508781rocess: 
      !>[A: $tType,B: $tType] : ( ( A > ( proces634752977rocess @ A ) > B ) > ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > B ) > ( proces634752977rocess @ A ) > B ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Och1Of,type,
    proces979765041_ch1Of: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Och2Of,type,
    proces988026546_ch2Of: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_OcontOf,type,
    proces1778668539contOf: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Ocorec__process,type,
    proces894737309rocess: 
      !>[C: $tType,A: $tType] : ( ( C > $o ) > ( C > A ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_OisAction,type,
    proces10484146Action: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > $o ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_OisChoice,type,
    proces401113213Choice: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > $o ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Omap__process,type,
    proces370407749rocess: 
      !>[A: $tType,Aa: $tType] : ( ( A > Aa ) > ( proces634752977rocess @ A ) > ( proces634752977rocess @ Aa ) ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Opred__process,type,
    proces1205983068rocess: 
      !>[A: $tType] : ( ( A > $o ) > ( proces634752977rocess @ A ) > $o ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_OprefOf,type,
    proces745025900prefOf: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > A ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Orel__process,type,
    proces749077512rocess: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > ( proces634752977rocess @ A ) > ( proces634752977rocess @ B ) > $o ) ).

thf(sy_c_Process__Mirabelle__xovoopgpgi_Oprocess_Oset__process,type,
    proces1148692671rocess: 
      !>[A: $tType] : ( ( proces634752977rocess @ A ) > ( set @ A ) ) ).

thf(sy_c_Pure_Otype,type,
    type2: 
      !>[A: $tType] : ( itself @ A ) ).

thf(sy_c_Quotient_OBex1__rel,type,
    bex1_rel: 
      !>[A: $tType] : ( ( A > A > $o ) > ( A > $o ) > $o ) ).

thf(sy_c_Quotient_OQuotient3,type,
    quotient3: 
      !>[A: $tType,B: $tType] : ( ( A > A > $o ) > ( A > B ) > ( B > A ) > $o ) ).

thf(sy_c_Relation_ODomainp,type,
    domainp: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > A > $o ) ).

thf(sy_c_Relation_Oreflp,type,
    reflp: 
      !>[A: $tType] : ( ( A > A > $o ) > $o ) ).

thf(sy_c_Relation_Orelcompp,type,
    relcompp: 
      !>[A: $tType,B: $tType,C: $tType] : ( ( A > B > $o ) > ( B > C > $o ) > A > C > $o ) ).

thf(sy_c_Set_OBall,type,
    ball: 
      !>[A: $tType] : ( ( set @ A ) > ( A > $o ) > $o ) ).

thf(sy_c_Set_OCollect,type,
    collect: 
      !>[A: $tType] : ( ( A > $o ) > ( set @ A ) ) ).

thf(sy_c_Set_Oinsert,type,
    insert: 
      !>[A: $tType] : ( A > ( set @ A ) > ( set @ A ) ) ).

thf(sy_c_Transfer_Obi__total,type,
    bi_total: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Oleft__total,type,
    left_total: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Orev__implies,type,
    rev_implies: $o > $o > $o ).

thf(sy_c_Transfer_Oright__total,type,
    right_total: 
      !>[A: $tType,B: $tType] : ( ( A > B > $o ) > $o ) ).

thf(sy_c_Transfer_Otransfer__bforall,type,
    transfer_bforall: 
      !>[A: $tType] : ( ( A > $o ) > ( A > $o ) > $o ) ).

thf(sy_c_Transfer_Otransfer__forall,type,
    transfer_forall: 
      !>[A: $tType] : ( ( A > $o ) > $o ) ).

thf(sy_c_member,type,
    member: 
      !>[A: $tType] : ( A > ( set @ A ) > $o ) ).

thf(sy_v__092_060phi_062,type,
    phi: ( proces634752977rocess @ a ) > ( proces634752977rocess @ a ) > $o ).

thf(sy_v_p,type,
    p: proces634752977rocess @ a ).

thf(sy_v_p_H,type,
    p2: proces634752977rocess @ a ).

%----Relevant facts (256)
thf(fact_0_phi,axiom,
    phi @ p @ p2 ).

% phi
thf(fact_1_process_Oinject_I2_J,axiom,
    ! [A: $tType,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A,Y21: proces634752977rocess @ A,Y22: proces634752977rocess @ A] :
      ( ( ( proces1915862579Choice @ A @ X21 @ X22 )
        = ( proces1915862579Choice @ A @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% process.inject(2)
thf(fact_2_process_Oinject_I1_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A,Y11: A,Y12: proces634752977rocess @ A] :
      ( ( ( proces1525233512Action @ A @ X11 @ X12 )
        = ( proces1525233512Action @ A @ Y11 @ Y12 ) )
      = ( ( X11 = Y11 )
        & ( X12 = Y12 ) ) ) ).

% process.inject(1)
thf(fact_3_process_Odisc_I4_J,axiom,
    ! [A: $tType,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] : ( proces401113213Choice @ A @ ( proces1915862579Choice @ A @ X21 @ X22 ) ) ).

% process.disc(4)
thf(fact_4_process_Odisc_I3_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A] :
      ~ ( proces401113213Choice @ A @ ( proces1525233512Action @ A @ X11 @ X12 ) ) ).

% process.disc(3)
thf(fact_5_process_OdiscI_I2_J,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( Process
        = ( proces1915862579Choice @ A @ X21 @ X22 ) )
     => ( proces401113213Choice @ A @ Process ) ) ).

% process.discI(2)
thf(fact_6_isChoice__def,axiom,
    ! [A: $tType] :
      ( ( proces401113213Choice @ A )
      = ( ^ [Process2: proces634752977rocess @ A] :
          ? [X212: proces634752977rocess @ A,X222: proces634752977rocess @ A] :
            ( Process2
            = ( proces1915862579Choice @ A @ X212 @ X222 ) ) ) ) ).

% isChoice_def
thf(fact_7_process_Odistinct__disc_I2_J,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A] :
      ( ( proces401113213Choice @ A @ Process )
     => ~ ( proces10484146Action @ A @ Process ) ) ).

% process.distinct_disc(2)
thf(fact_8_process_Odistinct__disc_I1_J,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A] :
      ( ( proces10484146Action @ A @ Process )
     => ~ ( proces401113213Choice @ A @ Process ) ) ).

% process.distinct_disc(1)
thf(fact_9_isAction__isChoice,axiom,
    ! [A: $tType,P: proces634752977rocess @ A] :
      ( ( proces10484146Action @ A @ P )
      | ( proces401113213Choice @ A @ P ) ) ).

% isAction_isChoice
thf(fact_10_process_Oexhaust__disc,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A] :
      ( ~ ( proces10484146Action @ A @ Process )
     => ( proces401113213Choice @ A @ Process ) ) ).

% process.exhaust_disc
thf(fact_11_not__isAction__isChoice,axiom,
    ! [A: $tType,P: proces634752977rocess @ A] :
      ~ ( ( proces10484146Action @ A @ P )
        & ( proces401113213Choice @ A @ P ) ) ).

% not_isAction_isChoice
thf(fact_12_process_Odistinct_I1_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( proces1525233512Action @ A @ X11 @ X12 )
     != ( proces1915862579Choice @ A @ X21 @ X22 ) ) ).

% process.distinct(1)
thf(fact_13_Act,axiom,
    ! [A2: a,P: proces634752977rocess @ a,A3: a,P2: proces634752977rocess @ a] :
      ( ( phi @ ( proces1525233512Action @ a @ A2 @ P ) @ ( proces1525233512Action @ a @ A3 @ P2 ) )
     => ( ( A2 = A3 )
        & ( ( phi @ P @ P2 )
          | ( P = P2 ) ) ) ) ).

% Act
thf(fact_14_Ch,axiom,
    ! [P: proces634752977rocess @ a,Q: proces634752977rocess @ a,P2: proces634752977rocess @ a,Q2: proces634752977rocess @ a] :
      ( ( phi @ ( proces1915862579Choice @ a @ P @ Q ) @ ( proces1915862579Choice @ a @ P2 @ Q2 ) )
     => ( ( ( phi @ P @ P2 )
          | ( P = P2 ) )
        & ( ( phi @ Q @ Q2 )
          | ( Q = Q2 ) ) ) ) ).

% Ch
thf(fact_15_iss,axiom,
    ! [P: proces634752977rocess @ a,P2: proces634752977rocess @ a] :
      ( ( phi @ P @ P2 )
     => ( ( ( proces10484146Action @ a @ P )
          = ( proces10484146Action @ a @ P2 ) )
        & ( ( proces401113213Choice @ a @ P )
          = ( proces401113213Choice @ a @ P2 ) ) ) ) ).

% iss
thf(fact_16_process__coind,axiom,
    ! [A: $tType,Phi: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > $o,P: proces634752977rocess @ A,P2: proces634752977rocess @ A] :
      ( ( Phi @ P @ P2 )
     => ( ! [P3: proces634752977rocess @ A,P4: proces634752977rocess @ A] :
            ( ( Phi @ P3 @ P4 )
           => ( ( ( proces10484146Action @ A @ P3 )
                = ( proces10484146Action @ A @ P4 ) )
              & ( ( proces401113213Choice @ A @ P3 )
                = ( proces401113213Choice @ A @ P4 ) ) ) )
       => ( ! [A4: A,A5: A,P3: proces634752977rocess @ A,P4: proces634752977rocess @ A] :
              ( ( Phi @ ( proces1525233512Action @ A @ A4 @ P3 ) @ ( proces1525233512Action @ A @ A5 @ P4 ) )
             => ( ( A4 = A5 )
                & ( Phi @ P3 @ P4 ) ) )
         => ( ! [P3: proces634752977rocess @ A,Q3: proces634752977rocess @ A,P4: proces634752977rocess @ A,Q4: proces634752977rocess @ A] :
                ( ( Phi @ ( proces1915862579Choice @ A @ P3 @ Q3 ) @ ( proces1915862579Choice @ A @ P4 @ Q4 ) )
               => ( ( Phi @ P3 @ P4 )
                  & ( Phi @ Q3 @ Q4 ) ) )
           => ( P = P2 ) ) ) ) ) ).

% process_coind
thf(fact_17_isAction__def,axiom,
    ! [A: $tType] :
      ( ( proces10484146Action @ A )
      = ( ^ [Process2: proces634752977rocess @ A] :
          ? [X112: A,X122: proces634752977rocess @ A] :
            ( Process2
            = ( proces1525233512Action @ A @ X112 @ X122 ) ) ) ) ).

% isAction_def
thf(fact_18_process_OdiscI_I1_J,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A,X11: A,X12: proces634752977rocess @ A] :
      ( ( Process
        = ( proces1525233512Action @ A @ X11 @ X12 ) )
     => ( proces10484146Action @ A @ Process ) ) ).

% process.discI(1)
thf(fact_19_process_Odisc_I1_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A] : ( proces10484146Action @ A @ ( proces1525233512Action @ A @ X11 @ X12 ) ) ).

% process.disc(1)
thf(fact_20_process_Odisc_I2_J,axiom,
    ! [A: $tType,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ~ ( proces10484146Action @ A @ ( proces1915862579Choice @ A @ X21 @ X22 ) ) ).

% process.disc(2)
thf(fact_21_process_Oexhaust,axiom,
    ! [A: $tType,Y: proces634752977rocess @ A] :
      ( ! [X113: A,X123: proces634752977rocess @ A] :
          ( Y
         != ( proces1525233512Action @ A @ X113 @ X123 ) )
     => ~ ! [X213: proces634752977rocess @ A,X223: proces634752977rocess @ A] :
            ( Y
           != ( proces1915862579Choice @ A @ X213 @ X223 ) ) ) ).

% process.exhaust
thf(fact_22_process_Oset__cases,axiom,
    ! [A: $tType,E: A,A2: proces634752977rocess @ A] :
      ( ( member @ A @ E @ ( proces1148692671rocess @ A @ A2 ) )
     => ( ! [Z2: proces634752977rocess @ A] :
            ( A2
           != ( proces1525233512Action @ A @ E @ Z2 ) )
       => ( ! [Z1: A,Z2: proces634752977rocess @ A] :
              ( ( A2
                = ( proces1525233512Action @ A @ Z1 @ Z2 ) )
             => ~ ( member @ A @ E @ ( proces1148692671rocess @ A @ Z2 ) ) )
         => ( ! [Z1: proces634752977rocess @ A] :
                ( ? [Z2: proces634752977rocess @ A] :
                    ( A2
                    = ( proces1915862579Choice @ A @ Z1 @ Z2 ) )
               => ~ ( member @ A @ E @ ( proces1148692671rocess @ A @ Z1 ) ) )
           => ~ ! [Z1: proces634752977rocess @ A,Z2: proces634752977rocess @ A] :
                  ( ( A2
                    = ( proces1915862579Choice @ A @ Z1 @ Z2 ) )
                 => ~ ( member @ A @ E @ ( proces1148692671rocess @ A @ Z2 ) ) ) ) ) ) ) ).

% process.set_cases
thf(fact_23_process_Oset__induct,axiom,
    ! [A: $tType,X: A,A2: proces634752977rocess @ A,P5: A > ( proces634752977rocess @ A ) > $o] :
      ( ( member @ A @ X @ ( proces1148692671rocess @ A @ A2 ) )
     => ( ! [Z1: A,Z2: proces634752977rocess @ A] : ( P5 @ Z1 @ ( proces1525233512Action @ A @ Z1 @ Z2 ) )
       => ( ! [Z1: A,Z2: proces634752977rocess @ A,Xa: A] :
              ( ( member @ A @ Xa @ ( proces1148692671rocess @ A @ Z2 ) )
             => ( ( P5 @ Xa @ Z2 )
               => ( P5 @ Xa @ ( proces1525233512Action @ A @ Z1 @ Z2 ) ) ) )
         => ( ! [Z1a: proces634752977rocess @ A,Z2a: proces634752977rocess @ A,Xb: A] :
                ( ( member @ A @ Xb @ ( proces1148692671rocess @ A @ Z1a ) )
               => ( ( P5 @ Xb @ Z1a )
                 => ( P5 @ Xb @ ( proces1915862579Choice @ A @ Z1a @ Z2a ) ) ) )
           => ( ! [Z1a: proces634752977rocess @ A,Z2a: proces634752977rocess @ A,Xc: A] :
                  ( ( member @ A @ Xc @ ( proces1148692671rocess @ A @ Z2a ) )
                 => ( ( P5 @ Xc @ Z2a )
                   => ( P5 @ Xc @ ( proces1915862579Choice @ A @ Z1a @ Z2a ) ) ) )
             => ( P5 @ X @ A2 ) ) ) ) ) ) ).

% process.set_induct
thf(fact_24_process_Opred__inject_I2_J,axiom,
    ! [A: $tType,P5: A > $o,A2: proces634752977rocess @ A,Aa2: proces634752977rocess @ A] :
      ( ( proces1205983068rocess @ A @ P5 @ ( proces1915862579Choice @ A @ A2 @ Aa2 ) )
      = ( ( proces1205983068rocess @ A @ P5 @ A2 )
        & ( proces1205983068rocess @ A @ P5 @ Aa2 ) ) ) ).

% process.pred_inject(2)
thf(fact_25_process_Opred__inject_I1_J,axiom,
    ! [A: $tType,P5: A > $o,A2: A,Aa2: proces634752977rocess @ A] :
      ( ( proces1205983068rocess @ A @ P5 @ ( proces1525233512Action @ A @ A2 @ Aa2 ) )
      = ( ( P5 @ A2 )
        & ( proces1205983068rocess @ A @ P5 @ Aa2 ) ) ) ).

% process.pred_inject(1)
thf(fact_26_process_Osimps_I6_J,axiom,
    ! [B: $tType,A: $tType,F1: A > ( proces634752977rocess @ A ) > B,F2: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > B,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( proces1406508781rocess @ A @ B @ F1 @ F2 @ ( proces1915862579Choice @ A @ X21 @ X22 ) )
      = ( F2 @ X21 @ X22 ) ) ).

% process.simps(6)
thf(fact_27_process_Osimps_I5_J,axiom,
    ! [B: $tType,A: $tType,F1: A > ( proces634752977rocess @ A ) > B,F2: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > B,X11: A,X12: proces634752977rocess @ A] :
      ( ( proces1406508781rocess @ A @ B @ F1 @ F2 @ ( proces1525233512Action @ A @ X11 @ X12 ) )
      = ( F1 @ X11 @ X12 ) ) ).

% process.simps(5)
thf(fact_28_process_Orel__distinct_I2_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,Y21: proces634752977rocess @ A,Y22: proces634752977rocess @ A,X11: B,X12: proces634752977rocess @ B] :
      ~ ( proces749077512rocess @ A @ B @ R @ ( proces1915862579Choice @ A @ Y21 @ Y22 ) @ ( proces1525233512Action @ B @ X11 @ X12 ) ) ).

% process.rel_distinct(2)
thf(fact_29_process_Orel__distinct_I1_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,X11: A,X12: proces634752977rocess @ A,Y21: proces634752977rocess @ B,Y22: proces634752977rocess @ B] :
      ~ ( proces749077512rocess @ A @ B @ R @ ( proces1525233512Action @ A @ X11 @ X12 ) @ ( proces1915862579Choice @ B @ Y21 @ Y22 ) ) ).

% process.rel_distinct(1)
thf(fact_30_process_Orel__cases,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,A2: proces634752977rocess @ A,B2: proces634752977rocess @ B] :
      ( ( proces749077512rocess @ A @ B @ R @ A2 @ B2 )
     => ( ! [X1: A,X2: proces634752977rocess @ A] :
            ( ( A2
              = ( proces1525233512Action @ A @ X1 @ X2 ) )
           => ! [Y1: B,Y2: proces634752977rocess @ B] :
                ( ( B2
                  = ( proces1525233512Action @ B @ Y1 @ Y2 ) )
               => ( ( R @ X1 @ Y1 )
                 => ~ ( proces749077512rocess @ A @ B @ R @ X2 @ Y2 ) ) ) )
       => ~ ! [X1a: proces634752977rocess @ A,X2a: proces634752977rocess @ A] :
              ( ( A2
                = ( proces1915862579Choice @ A @ X1a @ X2a ) )
             => ! [Y1a: proces634752977rocess @ B,Y2a: proces634752977rocess @ B] :
                  ( ( B2
                    = ( proces1915862579Choice @ B @ Y1a @ Y2a ) )
                 => ( ( proces749077512rocess @ A @ B @ R @ X1a @ Y1a )
                   => ~ ( proces749077512rocess @ A @ B @ R @ X2a @ Y2a ) ) ) ) ) ) ).

% process.rel_cases
thf(fact_31_process_Ocorec__disc__iff_I2_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C,A2: C] :
      ( ( proces401113213Choice @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
      = ( ~ ( P @ A2 ) ) ) ).

% process.corec_disc_iff(2)
thf(fact_32_process_Ocorec__disc__iff_I1_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C,A2: C] :
      ( ( proces10484146Action @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
      = ( P @ A2 ) ) ).

% process.corec_disc_iff(1)
thf(fact_33_process_Orel__inject_I1_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,X11: A,X12: proces634752977rocess @ A,Y11: B,Y12: proces634752977rocess @ B] :
      ( ( proces749077512rocess @ A @ B @ R @ ( proces1525233512Action @ A @ X11 @ X12 ) @ ( proces1525233512Action @ B @ Y11 @ Y12 ) )
      = ( ( R @ X11 @ Y11 )
        & ( proces749077512rocess @ A @ B @ R @ X12 @ Y12 ) ) ) ).

% process.rel_inject(1)
thf(fact_34_process_Orel__inject_I2_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A,Y21: proces634752977rocess @ B,Y22: proces634752977rocess @ B] :
      ( ( proces749077512rocess @ A @ B @ R @ ( proces1915862579Choice @ A @ X21 @ X22 ) @ ( proces1915862579Choice @ B @ Y21 @ Y22 ) )
      = ( ( proces749077512rocess @ A @ B @ R @ X21 @ Y21 )
        & ( proces749077512rocess @ A @ B @ R @ X22 @ Y22 ) ) ) ).

% process.rel_inject(2)
thf(fact_35_process_Opred__mono__strong,axiom,
    ! [A: $tType,P5: A > $o,X: proces634752977rocess @ A,Pa: A > $o] :
      ( ( proces1205983068rocess @ A @ P5 @ X )
     => ( ! [Z: A] :
            ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ X ) )
           => ( ( P5 @ Z )
             => ( Pa @ Z ) ) )
       => ( proces1205983068rocess @ A @ Pa @ X ) ) ) ).

% process.pred_mono_strong
thf(fact_36_process_Orel__refl__strong,axiom,
    ! [A: $tType,X: proces634752977rocess @ A,Ra: A > A > $o] :
      ( ! [Z: A] :
          ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ X ) )
         => ( Ra @ Z @ Z ) )
     => ( proces749077512rocess @ A @ A @ Ra @ X @ X ) ) ).

% process.rel_refl_strong
thf(fact_37_process_Orel__mono__strong,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,X: proces634752977rocess @ A,Y: proces634752977rocess @ B,Ra: A > B > $o] :
      ( ( proces749077512rocess @ A @ B @ R @ X @ Y )
     => ( ! [Z: A,Yb: B] :
            ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ X ) )
           => ( ( member @ B @ Yb @ ( proces1148692671rocess @ B @ Y ) )
             => ( ( R @ Z @ Yb )
               => ( Ra @ Z @ Yb ) ) ) )
       => ( proces749077512rocess @ A @ B @ Ra @ X @ Y ) ) ) ).

% process.rel_mono_strong
thf(fact_38_process_Opred__cong,axiom,
    ! [A: $tType,X: proces634752977rocess @ A,Ya: proces634752977rocess @ A,P5: A > $o,Pa: A > $o] :
      ( ( X = Ya )
     => ( ! [Z: A] :
            ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ Ya ) )
           => ( ( P5 @ Z )
              = ( Pa @ Z ) ) )
       => ( ( proces1205983068rocess @ A @ P5 @ X )
          = ( proces1205983068rocess @ A @ Pa @ Ya ) ) ) ) ).

% process.pred_cong
thf(fact_39_process_Orel__refl,axiom,
    ! [B: $tType,Ra: B > B > $o,X: proces634752977rocess @ B] :
      ( ! [X3: B] : ( Ra @ X3 @ X3 )
     => ( proces749077512rocess @ B @ B @ Ra @ X @ X ) ) ).

% process.rel_refl
thf(fact_40_process_Orel__cong,axiom,
    ! [A: $tType,B: $tType,X: proces634752977rocess @ A,Ya: proces634752977rocess @ A,Y: proces634752977rocess @ B,Xa2: proces634752977rocess @ B,R: A > B > $o,Ra: A > B > $o] :
      ( ( X = Ya )
     => ( ( Y = Xa2 )
       => ( ! [Z: A,Yb: B] :
              ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ Ya ) )
             => ( ( member @ B @ Yb @ ( proces1148692671rocess @ B @ Xa2 ) )
               => ( ( R @ Z @ Yb )
                  = ( Ra @ Z @ Yb ) ) ) )
         => ( ( proces749077512rocess @ A @ B @ R @ X @ Y )
            = ( proces749077512rocess @ A @ B @ Ra @ Ya @ Xa2 ) ) ) ) ) ).

% process.rel_cong
thf(fact_41_process_Orel__eq,axiom,
    ! [A: $tType] :
      ( ( proces749077512rocess @ A @ A
        @ ^ [Y3: A,Z3: A] : Y3 = Z3 )
      = ( ^ [Y3: proces634752977rocess @ A,Z3: proces634752977rocess @ A] : Y3 = Z3 ) ) ).

% process.rel_eq
thf(fact_42_process_Orel__intros_I1_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,X11: A,Y11: B,X12: proces634752977rocess @ A,Y12: proces634752977rocess @ B] :
      ( ( R @ X11 @ Y11 )
     => ( ( proces749077512rocess @ A @ B @ R @ X12 @ Y12 )
       => ( proces749077512rocess @ A @ B @ R @ ( proces1525233512Action @ A @ X11 @ X12 ) @ ( proces1525233512Action @ B @ Y11 @ Y12 ) ) ) ) ).

% process.rel_intros(1)
thf(fact_43_process_Orel__intros_I2_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o,X21: proces634752977rocess @ A,Y21: proces634752977rocess @ B,X22: proces634752977rocess @ A,Y22: proces634752977rocess @ B] :
      ( ( proces749077512rocess @ A @ B @ R @ X21 @ Y21 )
     => ( ( proces749077512rocess @ A @ B @ R @ X22 @ Y22 )
       => ( proces749077512rocess @ A @ B @ R @ ( proces1915862579Choice @ A @ X21 @ X22 ) @ ( proces1915862579Choice @ B @ Y21 @ Y22 ) ) ) ) ).

% process.rel_intros(2)
thf(fact_44_process_Oset__intros_I1_J,axiom,
    ! [A: $tType,A1: A,A22: proces634752977rocess @ A] : ( member @ A @ A1 @ ( proces1148692671rocess @ A @ ( proces1525233512Action @ A @ A1 @ A22 ) ) ) ).

% process.set_intros(1)
thf(fact_45_mem__Collect__eq,axiom,
    ! [A: $tType,A2: A,P5: A > $o] :
      ( ( member @ A @ A2 @ ( collect @ A @ P5 ) )
      = ( P5 @ A2 ) ) ).

% mem_Collect_eq
thf(fact_46_Collect__mem__eq,axiom,
    ! [A: $tType,A6: set @ A] :
      ( ( collect @ A
        @ ^ [X4: A] : ( member @ A @ X4 @ A6 ) )
      = A6 ) ).

% Collect_mem_eq
thf(fact_47_Collect__cong,axiom,
    ! [A: $tType,P5: A > $o,Q5: A > $o] :
      ( ! [X3: A] :
          ( ( P5 @ X3 )
          = ( Q5 @ X3 ) )
     => ( ( collect @ A @ P5 )
        = ( collect @ A @ Q5 ) ) ) ).

% Collect_cong
thf(fact_48_ext,axiom,
    ! [B: $tType,A: $tType,F: A > B,G: A > B] :
      ( ! [X3: A] :
          ( ( F @ X3 )
          = ( G @ X3 ) )
     => ( F = G ) ) ).

% ext
thf(fact_49_process_Oset__intros_I2_J,axiom,
    ! [A: $tType,X: A,A22: proces634752977rocess @ A,A1: A] :
      ( ( member @ A @ X @ ( proces1148692671rocess @ A @ A22 ) )
     => ( member @ A @ X @ ( proces1148692671rocess @ A @ ( proces1525233512Action @ A @ A1 @ A22 ) ) ) ) ).

% process.set_intros(2)
thf(fact_50_process_Oset__intros_I3_J,axiom,
    ! [A: $tType,Xa2: A,A1a: proces634752977rocess @ A,A2a: proces634752977rocess @ A] :
      ( ( member @ A @ Xa2 @ ( proces1148692671rocess @ A @ A1a ) )
     => ( member @ A @ Xa2 @ ( proces1148692671rocess @ A @ ( proces1915862579Choice @ A @ A1a @ A2a ) ) ) ) ).

% process.set_intros(3)
thf(fact_51_process_Oset__intros_I4_J,axiom,
    ! [A: $tType,Xb2: A,A2a: proces634752977rocess @ A,A1a: proces634752977rocess @ A] :
      ( ( member @ A @ Xb2 @ ( proces1148692671rocess @ A @ A2a ) )
     => ( member @ A @ Xb2 @ ( proces1148692671rocess @ A @ ( proces1915862579Choice @ A @ A1a @ A2a ) ) ) ) ).

% process.set_intros(4)
thf(fact_52_process_Ocorec__disc_I1_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ( P @ A2 )
     => ( proces10484146Action @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) ) ) ).

% process.corec_disc(1)
thf(fact_53_process_Ocorec_I1_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ( P @ A2 )
     => ( ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 )
        = ( proces1525233512Action @ A @ ( G11 @ A2 ) @ ( if @ ( proces634752977rocess @ A ) @ ( Q12 @ A2 ) @ ( G121 @ A2 ) @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ ( G122 @ A2 ) ) ) ) ) ) ).

% process.corec(1)
thf(fact_54_process_Ocorec_I2_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ~ ( P @ A2 )
     => ( ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 )
        = ( proces1915862579Choice @ A @ ( if @ ( proces634752977rocess @ A ) @ ( Q21 @ A2 ) @ ( G211 @ A2 ) @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ ( G212 @ A2 ) ) ) @ ( if @ ( proces634752977rocess @ A ) @ ( Q22 @ A2 ) @ ( G221 @ A2 ) @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ ( G222 @ A2 ) ) ) ) ) ) ).

% process.corec(2)
thf(fact_55_process_Ocorec__disc_I2_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ~ ( P @ A2 )
     => ( proces401113213Choice @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) ) ) ).

% process.corec_disc(2)
thf(fact_56_process_Oset__sel_I1_J,axiom,
    ! [A: $tType,A2: proces634752977rocess @ A] :
      ( ( proces10484146Action @ A @ A2 )
     => ( member @ A @ ( proces745025900prefOf @ A @ A2 ) @ ( proces1148692671rocess @ A @ A2 ) ) ) ).

% process.set_sel(1)
thf(fact_57_process_Oset__sel_I3_J,axiom,
    ! [A: $tType,A2: proces634752977rocess @ A,Xa2: A] :
      ( ( proces401113213Choice @ A @ A2 )
     => ( ( member @ A @ Xa2 @ ( proces1148692671rocess @ A @ ( proces979765041_ch1Of @ A @ A2 ) ) )
       => ( member @ A @ Xa2 @ ( proces1148692671rocess @ A @ A2 ) ) ) ) ).

% process.set_sel(3)
thf(fact_58_process_Oset__sel_I4_J,axiom,
    ! [A: $tType,A2: proces634752977rocess @ A,Xb2: A] :
      ( ( proces401113213Choice @ A @ A2 )
     => ( ( member @ A @ Xb2 @ ( proces1148692671rocess @ A @ ( proces988026546_ch2Of @ A @ A2 ) ) )
       => ( member @ A @ Xb2 @ ( proces1148692671rocess @ A @ A2 ) ) ) ) ).

% process.set_sel(4)
thf(fact_59_process_Oset__sel_I2_J,axiom,
    ! [A: $tType,A2: proces634752977rocess @ A,X: A] :
      ( ( proces10484146Action @ A @ A2 )
     => ( ( member @ A @ X @ ( proces1148692671rocess @ A @ ( proces1778668539contOf @ A @ A2 ) ) )
       => ( member @ A @ X @ ( proces1148692671rocess @ A @ A2 ) ) ) ) ).

% process.set_sel(2)
thf(fact_60_process_Osimps_I21_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A] :
      ( ( proces1148692671rocess @ A @ ( proces1525233512Action @ A @ X11 @ X12 ) )
      = ( insert @ A @ X11 @ ( proces1148692671rocess @ A @ X12 ) ) ) ).

% process.simps(21)
thf(fact_61_process_Opred__rel,axiom,
    ! [A: $tType] :
      ( ( proces1205983068rocess @ A )
      = ( ^ [P6: A > $o,X4: proces634752977rocess @ A] : ( proces749077512rocess @ A @ A @ ( bNF_eq_onp @ A @ P6 ) @ X4 @ X4 ) ) ) ).

% process.pred_rel
thf(fact_62_process_Osimps_I22_J,axiom,
    ! [A: $tType,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( proces1148692671rocess @ A @ ( proces1915862579Choice @ A @ X21 @ X22 ) )
      = ( sup_sup @ ( set @ A ) @ ( proces1148692671rocess @ A @ X21 ) @ ( proces1148692671rocess @ A @ X22 ) ) ) ).

% process.simps(22)
thf(fact_63_process_Opred__set,axiom,
    ! [A: $tType] :
      ( ( proces1205983068rocess @ A )
      = ( ^ [P6: A > $o,X4: proces634752977rocess @ A] :
          ! [Y4: A] :
            ( ( member @ A @ Y4 @ ( proces1148692671rocess @ A @ X4 ) )
           => ( P6 @ Y4 ) ) ) ) ).

% process.pred_set
thf(fact_64_process_Odisc__transfer_I2_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] :
      ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ $o @ $o @ ( proces749077512rocess @ A @ B @ R )
      @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
      @ ( proces401113213Choice @ A )
      @ ( proces401113213Choice @ B ) ) ).

% process.disc_transfer(2)
thf(fact_65_process_Ocollapse_I1_J,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A] :
      ( ( proces10484146Action @ A @ Process )
     => ( ( proces1525233512Action @ A @ ( proces745025900prefOf @ A @ Process ) @ ( proces1778668539contOf @ A @ Process ) )
        = Process ) ) ).

% process.collapse(1)
thf(fact_66_process_Ocollapse_I2_J,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A] :
      ( ( proces401113213Choice @ A @ Process )
     => ( ( proces1915862579Choice @ A @ ( proces979765041_ch1Of @ A @ Process ) @ ( proces988026546_ch2Of @ A @ Process ) )
        = Process ) ) ).

% process.collapse(2)
thf(fact_67_process_Ocorec__transfer,axiom,
    ! [C: $tType,A: $tType,B: $tType,D: $tType,S: C > D > $o,R: A > B > $o] :
      ( bNF_rel_fun @ ( C > $o ) @ ( D > $o ) @ ( ( C > A ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > B ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) )
      @ ( bNF_rel_fun @ C @ D @ $o @ $o @ S
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
      @ ( bNF_rel_fun @ ( C > A ) @ ( D > B ) @ ( ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ A @ B @ S @ R )
        @ ( bNF_rel_fun @ ( C > $o ) @ ( D > $o ) @ ( ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) )
          @ ( bNF_rel_fun @ C @ D @ $o @ $o @ S
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
          @ ( bNF_rel_fun @ ( C > ( proces634752977rocess @ A ) ) @ ( D > ( proces634752977rocess @ B ) ) @ ( ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ S @ ( proces749077512rocess @ A @ B @ R ) )
            @ ( bNF_rel_fun @ ( C > C ) @ ( D > D ) @ ( ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ C @ D @ S @ S )
              @ ( bNF_rel_fun @ ( C > $o ) @ ( D > $o ) @ ( ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) )
                @ ( bNF_rel_fun @ C @ D @ $o @ $o @ S
                  @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
                @ ( bNF_rel_fun @ ( C > ( proces634752977rocess @ A ) ) @ ( D > ( proces634752977rocess @ B ) ) @ ( ( C > C ) > ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > D ) > ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ S @ ( proces749077512rocess @ A @ B @ R ) )
                  @ ( bNF_rel_fun @ ( C > C ) @ ( D > D ) @ ( ( C > $o ) > ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > $o ) > ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ C @ D @ S @ S )
                    @ ( bNF_rel_fun @ ( C > $o ) @ ( D > $o ) @ ( ( C > ( proces634752977rocess @ A ) ) > ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > ( proces634752977rocess @ B ) ) > ( D > D ) > D > ( proces634752977rocess @ B ) )
                      @ ( bNF_rel_fun @ C @ D @ $o @ $o @ S
                        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
                      @ ( bNF_rel_fun @ ( C > ( proces634752977rocess @ A ) ) @ ( D > ( proces634752977rocess @ B ) ) @ ( ( C > C ) > C > ( proces634752977rocess @ A ) ) @ ( ( D > D ) > D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ S @ ( proces749077512rocess @ A @ B @ R ) ) @ ( bNF_rel_fun @ ( C > C ) @ ( D > D ) @ ( C > ( proces634752977rocess @ A ) ) @ ( D > ( proces634752977rocess @ B ) ) @ ( bNF_rel_fun @ C @ D @ C @ D @ S @ S ) @ ( bNF_rel_fun @ C @ D @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ S @ ( proces749077512rocess @ A @ B @ R ) ) ) ) ) ) ) ) ) ) ) )
      @ ( proces894737309rocess @ C @ A )
      @ ( proces894737309rocess @ D @ B ) ) ).

% process.corec_transfer
thf(fact_68_process_Oexhaust__sel,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A] :
      ( ( Process
       != ( proces1525233512Action @ A @ ( proces745025900prefOf @ A @ Process ) @ ( proces1778668539contOf @ A @ Process ) ) )
     => ( Process
        = ( proces1915862579Choice @ A @ ( proces979765041_ch1Of @ A @ Process ) @ ( proces988026546_ch2Of @ A @ Process ) ) ) ) ).

% process.exhaust_sel
thf(fact_69_process_Oexpand,axiom,
    ! [A: $tType,Process: proces634752977rocess @ A,Process3: proces634752977rocess @ A] :
      ( ( ( proces10484146Action @ A @ Process )
        = ( proces10484146Action @ A @ Process3 ) )
     => ( ( ( proces10484146Action @ A @ Process )
         => ( ( proces10484146Action @ A @ Process3 )
           => ( ( ( proces745025900prefOf @ A @ Process )
                = ( proces745025900prefOf @ A @ Process3 ) )
              & ( ( proces1778668539contOf @ A @ Process )
                = ( proces1778668539contOf @ A @ Process3 ) ) ) ) )
       => ( ( ( proces401113213Choice @ A @ Process )
           => ( ( proces401113213Choice @ A @ Process3 )
             => ( ( ( proces979765041_ch1Of @ A @ Process )
                  = ( proces979765041_ch1Of @ A @ Process3 ) )
                & ( ( proces988026546_ch2Of @ A @ Process )
                  = ( proces988026546_ch2Of @ A @ Process3 ) ) ) ) )
         => ( Process = Process3 ) ) ) ) ).

% process.expand
thf(fact_70_process_Ocoinduct,axiom,
    ! [A: $tType,R: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > $o,Process: proces634752977rocess @ A,Process3: proces634752977rocess @ A] :
      ( ( R @ Process @ Process3 )
     => ( ! [Process4: proces634752977rocess @ A,Process5: proces634752977rocess @ A] :
            ( ( R @ Process4 @ Process5 )
           => ( ( ( proces10484146Action @ A @ Process4 )
                = ( proces10484146Action @ A @ Process5 ) )
              & ( ( proces10484146Action @ A @ Process4 )
               => ( ( proces10484146Action @ A @ Process5 )
                 => ( ( ( proces745025900prefOf @ A @ Process4 )
                      = ( proces745025900prefOf @ A @ Process5 ) )
                    & ( R @ ( proces1778668539contOf @ A @ Process4 ) @ ( proces1778668539contOf @ A @ Process5 ) ) ) ) )
              & ( ( proces401113213Choice @ A @ Process4 )
               => ( ( proces401113213Choice @ A @ Process5 )
                 => ( ( R @ ( proces979765041_ch1Of @ A @ Process4 ) @ ( proces979765041_ch1Of @ A @ Process5 ) )
                    & ( R @ ( proces988026546_ch2Of @ A @ Process4 ) @ ( proces988026546_ch2Of @ A @ Process5 ) ) ) ) ) ) )
       => ( Process = Process3 ) ) ) ).

% process.coinduct
thf(fact_71_process_Ocoinduct__strong,axiom,
    ! [A: $tType,R: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > $o,Process: proces634752977rocess @ A,Process3: proces634752977rocess @ A] :
      ( ( R @ Process @ Process3 )
     => ( ! [Process4: proces634752977rocess @ A,Process5: proces634752977rocess @ A] :
            ( ( R @ Process4 @ Process5 )
           => ( ( ( proces10484146Action @ A @ Process4 )
                = ( proces10484146Action @ A @ Process5 ) )
              & ( ( proces10484146Action @ A @ Process4 )
               => ( ( proces10484146Action @ A @ Process5 )
                 => ( ( ( proces745025900prefOf @ A @ Process4 )
                      = ( proces745025900prefOf @ A @ Process5 ) )
                    & ( ( R @ ( proces1778668539contOf @ A @ Process4 ) @ ( proces1778668539contOf @ A @ Process5 ) )
                      | ( ( proces1778668539contOf @ A @ Process4 )
                        = ( proces1778668539contOf @ A @ Process5 ) ) ) ) ) )
              & ( ( proces401113213Choice @ A @ Process4 )
               => ( ( proces401113213Choice @ A @ Process5 )
                 => ( ( ( R @ ( proces979765041_ch1Of @ A @ Process4 ) @ ( proces979765041_ch1Of @ A @ Process5 ) )
                      | ( ( proces979765041_ch1Of @ A @ Process4 )
                        = ( proces979765041_ch1Of @ A @ Process5 ) ) )
                    & ( ( R @ ( proces988026546_ch2Of @ A @ Process4 ) @ ( proces988026546_ch2Of @ A @ Process5 ) )
                      | ( ( proces988026546_ch2Of @ A @ Process4 )
                        = ( proces988026546_ch2Of @ A @ Process5 ) ) ) ) ) ) ) )
       => ( Process = Process3 ) ) ) ).

% process.coinduct_strong
thf(fact_72_process_Ocase__eq__if,axiom,
    ! [B: $tType,A: $tType] :
      ( ( proces1406508781rocess @ A @ B )
      = ( ^ [F12: A > ( proces634752977rocess @ A ) > B,F22: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > B,Process2: proces634752977rocess @ A] : ( if @ B @ ( proces10484146Action @ A @ Process2 ) @ ( F12 @ ( proces745025900prefOf @ A @ Process2 ) @ ( proces1778668539contOf @ A @ Process2 ) ) @ ( F22 @ ( proces979765041_ch1Of @ A @ Process2 ) @ ( proces988026546_ch2Of @ A @ Process2 ) ) ) ) ) ).

% process.case_eq_if
thf(fact_73_process_Orel__coinduct,axiom,
    ! [A: $tType,B: $tType,P5: ( proces634752977rocess @ A ) > ( proces634752977rocess @ B ) > $o,X: proces634752977rocess @ A,Y: proces634752977rocess @ B,R: A > B > $o] :
      ( ( P5 @ X @ Y )
     => ( ! [Process4: proces634752977rocess @ A,Process5: proces634752977rocess @ B] :
            ( ( P5 @ Process4 @ Process5 )
           => ( ( ( proces10484146Action @ A @ Process4 )
                = ( proces10484146Action @ B @ Process5 ) )
              & ( ( proces10484146Action @ A @ Process4 )
               => ( ( proces10484146Action @ B @ Process5 )
                 => ( ( R @ ( proces745025900prefOf @ A @ Process4 ) @ ( proces745025900prefOf @ B @ Process5 ) )
                    & ( P5 @ ( proces1778668539contOf @ A @ Process4 ) @ ( proces1778668539contOf @ B @ Process5 ) ) ) ) )
              & ( ( proces401113213Choice @ A @ Process4 )
               => ( ( proces401113213Choice @ B @ Process5 )
                 => ( ( P5 @ ( proces979765041_ch1Of @ A @ Process4 ) @ ( proces979765041_ch1Of @ B @ Process5 ) )
                    & ( P5 @ ( proces988026546_ch2Of @ A @ Process4 ) @ ( proces988026546_ch2Of @ B @ Process5 ) ) ) ) ) ) )
       => ( proces749077512rocess @ A @ B @ R @ X @ Y ) ) ) ).

% process.rel_coinduct
thf(fact_74_process_Orel__sel,axiom,
    ! [B: $tType,A: $tType] :
      ( ( proces749077512rocess @ A @ B )
      = ( ^ [R2: A > B > $o,A7: proces634752977rocess @ A,B3: proces634752977rocess @ B] :
            ( ( ( proces10484146Action @ A @ A7 )
              = ( proces10484146Action @ B @ B3 ) )
            & ( ( proces10484146Action @ A @ A7 )
             => ( ( proces10484146Action @ B @ B3 )
               => ( ( R2 @ ( proces745025900prefOf @ A @ A7 ) @ ( proces745025900prefOf @ B @ B3 ) )
                  & ( proces749077512rocess @ A @ B @ R2 @ ( proces1778668539contOf @ A @ A7 ) @ ( proces1778668539contOf @ B @ B3 ) ) ) ) )
            & ( ( proces401113213Choice @ A @ A7 )
             => ( ( proces401113213Choice @ B @ B3 )
               => ( ( proces749077512rocess @ A @ B @ R2 @ ( proces979765041_ch1Of @ A @ A7 ) @ ( proces979765041_ch1Of @ B @ B3 ) )
                  & ( proces749077512rocess @ A @ B @ R2 @ ( proces988026546_ch2Of @ A @ A7 ) @ ( proces988026546_ch2Of @ B @ B3 ) ) ) ) ) ) ) ) ).

% process.rel_sel
thf(fact_75_process_Osplit__sel,axiom,
    ! [B: $tType,A: $tType,P5: B > $o,F1: A > ( proces634752977rocess @ A ) > B,F2: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > B,Process: proces634752977rocess @ A] :
      ( ( P5 @ ( proces1406508781rocess @ A @ B @ F1 @ F2 @ Process ) )
      = ( ( ( Process
            = ( proces1525233512Action @ A @ ( proces745025900prefOf @ A @ Process ) @ ( proces1778668539contOf @ A @ Process ) ) )
         => ( P5 @ ( F1 @ ( proces745025900prefOf @ A @ Process ) @ ( proces1778668539contOf @ A @ Process ) ) ) )
        & ( ( Process
            = ( proces1915862579Choice @ A @ ( proces979765041_ch1Of @ A @ Process ) @ ( proces988026546_ch2Of @ A @ Process ) ) )
         => ( P5 @ ( F2 @ ( proces979765041_ch1Of @ A @ Process ) @ ( proces988026546_ch2Of @ A @ Process ) ) ) ) ) ) ).

% process.split_sel
thf(fact_76_process_Osplit__sel__asm,axiom,
    ! [B: $tType,A: $tType,P5: B > $o,F1: A > ( proces634752977rocess @ A ) > B,F2: ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > B,Process: proces634752977rocess @ A] :
      ( ( P5 @ ( proces1406508781rocess @ A @ B @ F1 @ F2 @ Process ) )
      = ( ~ ( ( ( Process
                = ( proces1525233512Action @ A @ ( proces745025900prefOf @ A @ Process ) @ ( proces1778668539contOf @ A @ Process ) ) )
              & ~ ( P5 @ ( F1 @ ( proces745025900prefOf @ A @ Process ) @ ( proces1778668539contOf @ A @ Process ) ) ) )
            | ( ( Process
                = ( proces1915862579Choice @ A @ ( proces979765041_ch1Of @ A @ Process ) @ ( proces988026546_ch2Of @ A @ Process ) ) )
              & ~ ( P5 @ ( F2 @ ( proces979765041_ch1Of @ A @ Process ) @ ( proces988026546_ch2Of @ A @ Process ) ) ) ) ) ) ) ).

% process.split_sel_asm
thf(fact_77_process_Orel__eq__onp,axiom,
    ! [A: $tType,P5: A > $o] :
      ( ( proces749077512rocess @ A @ A @ ( bNF_eq_onp @ A @ P5 ) )
      = ( bNF_eq_onp @ ( proces634752977rocess @ A ) @ ( proces1205983068rocess @ A @ P5 ) ) ) ).

% process.rel_eq_onp
thf(fact_78_process_Osel_I4_J,axiom,
    ! [A: $tType,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( proces988026546_ch2Of @ A @ ( proces1915862579Choice @ A @ X21 @ X22 ) )
      = X22 ) ).

% process.sel(4)
thf(fact_79_process_Osel_I3_J,axiom,
    ! [A: $tType,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( proces979765041_ch1Of @ A @ ( proces1915862579Choice @ A @ X21 @ X22 ) )
      = X21 ) ).

% process.sel(3)
thf(fact_80_process_Osel_I2_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A] :
      ( ( proces1778668539contOf @ A @ ( proces1525233512Action @ A @ X11 @ X12 ) )
      = X12 ) ).

% process.sel(2)
thf(fact_81_process_Osel_I1_J,axiom,
    ! [A: $tType,X11: A,X12: proces634752977rocess @ A] :
      ( ( proces745025900prefOf @ A @ ( proces1525233512Action @ A @ X11 @ X12 ) )
      = X11 ) ).

% process.sel(1)
thf(fact_82_process_Ocorec__sel_I4_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,Q22: C > $o,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ~ ( P @ A2 )
     => ( ( ( Q22 @ A2 )
         => ( ( proces988026546_ch2Of @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
            = ( G221 @ A2 ) ) )
        & ( ~ ( Q22 @ A2 )
         => ( ( proces988026546_ch2Of @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
            = ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ ( G222 @ A2 ) ) ) ) ) ) ).

% process.corec_sel(4)
thf(fact_83_process_Ocorec__sel_I3_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,Q21: C > $o,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ~ ( P @ A2 )
     => ( ( ( Q21 @ A2 )
         => ( ( proces979765041_ch1Of @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
            = ( G211 @ A2 ) ) )
        & ( ~ ( Q21 @ A2 )
         => ( ( proces979765041_ch1Of @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
            = ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ ( G212 @ A2 ) ) ) ) ) ) ).

% process.corec_sel(3)
thf(fact_84_process_Ocorec__sel_I2_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,Q12: C > $o,G11: C > A,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ( P @ A2 )
     => ( ( ( Q12 @ A2 )
         => ( ( proces1778668539contOf @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
            = ( G121 @ A2 ) ) )
        & ( ~ ( Q12 @ A2 )
         => ( ( proces1778668539contOf @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
            = ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ ( G122 @ A2 ) ) ) ) ) ) ).

% process.corec_sel(2)
thf(fact_85_process_Ocorec__sel_I1_J,axiom,
    ! [A: $tType,C: $tType,P: C > $o,A2: C,G11: C > A,Q12: C > $o,G121: C > ( proces634752977rocess @ A ),G122: C > C,Q21: C > $o,G211: C > ( proces634752977rocess @ A ),G212: C > C,Q22: C > $o,G221: C > ( proces634752977rocess @ A ),G222: C > C] :
      ( ( P @ A2 )
     => ( ( proces745025900prefOf @ A @ ( proces894737309rocess @ C @ A @ P @ G11 @ Q12 @ G121 @ G122 @ Q21 @ G211 @ G212 @ Q22 @ G221 @ G222 @ A2 ) )
        = ( G11 @ A2 ) ) ) ).

% process.corec_sel(1)
thf(fact_86_process_Odisc__transfer_I1_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] :
      ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ $o @ $o @ ( proces749077512rocess @ A @ B @ R )
      @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
      @ ( proces10484146Action @ A )
      @ ( proces10484146Action @ B ) ) ).

% process.disc_transfer(1)
thf(fact_87_Un__insert__left,axiom,
    ! [A: $tType,A2: A,B4: set @ A,C2: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( insert @ A @ A2 @ B4 ) @ C2 )
      = ( insert @ A @ A2 @ ( sup_sup @ ( set @ A ) @ B4 @ C2 ) ) ) ).

% Un_insert_left
thf(fact_88_Un__insert__right,axiom,
    ! [A: $tType,A6: set @ A,A2: A,B4: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A6 @ ( insert @ A @ A2 @ B4 ) )
      = ( insert @ A @ A2 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) ) ) ).

% Un_insert_right
thf(fact_89_UnCI,axiom,
    ! [A: $tType,C3: A,B4: set @ A,A6: set @ A] :
      ( ( ~ ( member @ A @ C3 @ B4 )
       => ( member @ A @ C3 @ A6 ) )
     => ( member @ A @ C3 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) ) ) ).

% UnCI
thf(fact_90_Un__iff,axiom,
    ! [A: $tType,C3: A,A6: set @ A,B4: set @ A] :
      ( ( member @ A @ C3 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) )
      = ( ( member @ A @ C3 @ A6 )
        | ( member @ A @ C3 @ B4 ) ) ) ).

% Un_iff
thf(fact_91_insertCI,axiom,
    ! [A: $tType,A2: A,B4: set @ A,B2: A] :
      ( ( ~ ( member @ A @ A2 @ B4 )
       => ( A2 = B2 ) )
     => ( member @ A @ A2 @ ( insert @ A @ B2 @ B4 ) ) ) ).

% insertCI
thf(fact_92_insert__iff,axiom,
    ! [A: $tType,A2: A,B2: A,A6: set @ A] :
      ( ( member @ A @ A2 @ ( insert @ A @ B2 @ A6 ) )
      = ( ( A2 = B2 )
        | ( member @ A @ A2 @ A6 ) ) ) ).

% insert_iff
thf(fact_93_insert__absorb2,axiom,
    ! [A: $tType,X: A,A6: set @ A] :
      ( ( insert @ A @ X @ ( insert @ A @ X @ A6 ) )
      = ( insert @ A @ X @ A6 ) ) ).

% insert_absorb2
thf(fact_94_process_Ocase__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R: A > B > $o,S: C > D > $o] : ( bNF_rel_fun @ ( A > ( proces634752977rocess @ A ) > C ) @ ( B > ( proces634752977rocess @ B ) > D ) @ ( ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > C ) > ( proces634752977rocess @ A ) > C ) @ ( ( ( proces634752977rocess @ B ) > ( proces634752977rocess @ B ) > D ) > ( proces634752977rocess @ B ) > D ) @ ( bNF_rel_fun @ A @ B @ ( ( proces634752977rocess @ A ) > C ) @ ( ( proces634752977rocess @ B ) > D ) @ R @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ C @ D @ ( proces749077512rocess @ A @ B @ R ) @ S ) ) @ ( bNF_rel_fun @ ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) > C ) @ ( ( proces634752977rocess @ B ) > ( proces634752977rocess @ B ) > D ) @ ( ( proces634752977rocess @ A ) > C ) @ ( ( proces634752977rocess @ B ) > D ) @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( ( proces634752977rocess @ A ) > C ) @ ( ( proces634752977rocess @ B ) > D ) @ ( proces749077512rocess @ A @ B @ R ) @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ C @ D @ ( proces749077512rocess @ A @ B @ R ) @ S ) ) @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ C @ D @ ( proces749077512rocess @ A @ B @ R ) @ S ) ) @ ( proces1406508781rocess @ A @ C ) @ ( proces1406508781rocess @ B @ D ) ) ).

% process.case_transfer
thf(fact_95_process_Octr__transfer_I1_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] : ( bNF_rel_fun @ A @ B @ ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) @ ( ( proces634752977rocess @ B ) > ( proces634752977rocess @ B ) ) @ R @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces749077512rocess @ A @ B @ R ) @ ( proces749077512rocess @ A @ B @ R ) ) @ ( proces1525233512Action @ A ) @ ( proces1525233512Action @ B ) ) ).

% process.ctr_transfer(1)
thf(fact_96_process_Octr__transfer_I2_J,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] : ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ A ) ) @ ( ( proces634752977rocess @ B ) > ( proces634752977rocess @ B ) ) @ ( proces749077512rocess @ A @ B @ R ) @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces749077512rocess @ A @ B @ R ) @ ( proces749077512rocess @ A @ B @ R ) ) @ ( proces1915862579Choice @ A ) @ ( proces1915862579Choice @ B ) ) ).

% process.ctr_transfer(2)
thf(fact_97_process_Orel__transfer,axiom,
    ! [A: $tType,B: $tType,D: $tType,C: $tType,Sa: A > C > $o,Sc: B > D > $o] :
      ( bNF_rel_fun @ ( A > B > $o ) @ ( C > D > $o ) @ ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ B ) > $o ) @ ( ( proces634752977rocess @ C ) > ( proces634752977rocess @ D ) > $o )
      @ ( bNF_rel_fun @ A @ C @ ( B > $o ) @ ( D > $o ) @ Sa
        @ ( bNF_rel_fun @ B @ D @ $o @ $o @ Sc
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
      @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ C ) @ ( ( proces634752977rocess @ B ) > $o ) @ ( ( proces634752977rocess @ D ) > $o ) @ ( proces749077512rocess @ A @ C @ Sa )
        @ ( bNF_rel_fun @ ( proces634752977rocess @ B ) @ ( proces634752977rocess @ D ) @ $o @ $o @ ( proces749077512rocess @ B @ D @ Sc )
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
      @ ( proces749077512rocess @ A @ B )
      @ ( proces749077512rocess @ C @ D ) ) ).

% process.rel_transfer
thf(fact_98_mk__disjoint__insert,axiom,
    ! [A: $tType,A2: A,A6: set @ A] :
      ( ( member @ A @ A2 @ A6 )
     => ? [B5: set @ A] :
          ( ( A6
            = ( insert @ A @ A2 @ B5 ) )
          & ~ ( member @ A @ A2 @ B5 ) ) ) ).

% mk_disjoint_insert
thf(fact_99_insert__commute,axiom,
    ! [A: $tType,X: A,Y: A,A6: set @ A] :
      ( ( insert @ A @ X @ ( insert @ A @ Y @ A6 ) )
      = ( insert @ A @ Y @ ( insert @ A @ X @ A6 ) ) ) ).

% insert_commute
thf(fact_100_insert__eq__iff,axiom,
    ! [A: $tType,A2: A,A6: set @ A,B2: A,B4: set @ A] :
      ( ~ ( member @ A @ A2 @ A6 )
     => ( ~ ( member @ A @ B2 @ B4 )
       => ( ( ( insert @ A @ A2 @ A6 )
            = ( insert @ A @ B2 @ B4 ) )
          = ( ( ( A2 = B2 )
             => ( A6 = B4 ) )
            & ( ( A2 != B2 )
             => ? [C4: set @ A] :
                  ( ( A6
                    = ( insert @ A @ B2 @ C4 ) )
                  & ~ ( member @ A @ B2 @ C4 )
                  & ( B4
                    = ( insert @ A @ A2 @ C4 ) )
                  & ~ ( member @ A @ A2 @ C4 ) ) ) ) ) ) ) ).

% insert_eq_iff
thf(fact_101_insert__absorb,axiom,
    ! [A: $tType,A2: A,A6: set @ A] :
      ( ( member @ A @ A2 @ A6 )
     => ( ( insert @ A @ A2 @ A6 )
        = A6 ) ) ).

% insert_absorb
thf(fact_102_insert__ident,axiom,
    ! [A: $tType,X: A,A6: set @ A,B4: set @ A] :
      ( ~ ( member @ A @ X @ A6 )
     => ( ~ ( member @ A @ X @ B4 )
       => ( ( ( insert @ A @ X @ A6 )
            = ( insert @ A @ X @ B4 ) )
          = ( A6 = B4 ) ) ) ) ).

% insert_ident
thf(fact_103_Set_Oset__insert,axiom,
    ! [A: $tType,X: A,A6: set @ A] :
      ( ( member @ A @ X @ A6 )
     => ~ ! [B5: set @ A] :
            ( ( A6
              = ( insert @ A @ X @ B5 ) )
           => ( member @ A @ X @ B5 ) ) ) ).

% Set.set_insert
thf(fact_104_insertI2,axiom,
    ! [A: $tType,A2: A,B4: set @ A,B2: A] :
      ( ( member @ A @ A2 @ B4 )
     => ( member @ A @ A2 @ ( insert @ A @ B2 @ B4 ) ) ) ).

% insertI2
thf(fact_105_insertI1,axiom,
    ! [A: $tType,A2: A,B4: set @ A] : ( member @ A @ A2 @ ( insert @ A @ A2 @ B4 ) ) ).

% insertI1
thf(fact_106_insertE,axiom,
    ! [A: $tType,A2: A,B2: A,A6: set @ A] :
      ( ( member @ A @ A2 @ ( insert @ A @ B2 @ A6 ) )
     => ( ( A2 != B2 )
       => ( member @ A @ A2 @ A6 ) ) ) ).

% insertE
thf(fact_107_Ball__def,axiom,
    ! [A: $tType] :
      ( ( ball @ A )
      = ( ^ [A8: set @ A,P6: A > $o] :
          ! [X4: A] :
            ( ( member @ A @ X4 @ A8 )
           => ( P6 @ X4 ) ) ) ) ).

% Ball_def
thf(fact_108_Un__left__commute,axiom,
    ! [A: $tType,A6: set @ A,B4: set @ A,C2: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A6 @ ( sup_sup @ ( set @ A ) @ B4 @ C2 ) )
      = ( sup_sup @ ( set @ A ) @ B4 @ ( sup_sup @ ( set @ A ) @ A6 @ C2 ) ) ) ).

% Un_left_commute
thf(fact_109_Un__left__absorb,axiom,
    ! [A: $tType,A6: set @ A,B4: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A6 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) )
      = ( sup_sup @ ( set @ A ) @ A6 @ B4 ) ) ).

% Un_left_absorb
thf(fact_110_Un__commute,axiom,
    ! [A: $tType] :
      ( ( sup_sup @ ( set @ A ) )
      = ( ^ [A8: set @ A,B6: set @ A] : ( sup_sup @ ( set @ A ) @ B6 @ A8 ) ) ) ).

% Un_commute
thf(fact_111_Un__absorb,axiom,
    ! [A: $tType,A6: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ A6 @ A6 )
      = A6 ) ).

% Un_absorb
thf(fact_112_Un__assoc,axiom,
    ! [A: $tType,A6: set @ A,B4: set @ A,C2: set @ A] :
      ( ( sup_sup @ ( set @ A ) @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) @ C2 )
      = ( sup_sup @ ( set @ A ) @ A6 @ ( sup_sup @ ( set @ A ) @ B4 @ C2 ) ) ) ).

% Un_assoc
thf(fact_113_ball__Un,axiom,
    ! [A: $tType,A6: set @ A,B4: set @ A,P5: A > $o] :
      ( ( ! [X4: A] :
            ( ( member @ A @ X4 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) )
           => ( P5 @ X4 ) ) )
      = ( ! [X4: A] :
            ( ( member @ A @ X4 @ A6 )
           => ( P5 @ X4 ) )
        & ! [X4: A] :
            ( ( member @ A @ X4 @ B4 )
           => ( P5 @ X4 ) ) ) ) ).

% ball_Un
thf(fact_114_bex__Un,axiom,
    ! [A: $tType,A6: set @ A,B4: set @ A,P5: A > $o] :
      ( ( ? [X4: A] :
            ( ( member @ A @ X4 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) )
            & ( P5 @ X4 ) ) )
      = ( ? [X4: A] :
            ( ( member @ A @ X4 @ A6 )
            & ( P5 @ X4 ) )
        | ? [X4: A] :
            ( ( member @ A @ X4 @ B4 )
            & ( P5 @ X4 ) ) ) ) ).

% bex_Un
thf(fact_115_UnI2,axiom,
    ! [A: $tType,C3: A,B4: set @ A,A6: set @ A] :
      ( ( member @ A @ C3 @ B4 )
     => ( member @ A @ C3 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) ) ) ).

% UnI2
thf(fact_116_UnI1,axiom,
    ! [A: $tType,C3: A,A6: set @ A,B4: set @ A] :
      ( ( member @ A @ C3 @ A6 )
     => ( member @ A @ C3 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) ) ) ).

% UnI1
thf(fact_117_UnE,axiom,
    ! [A: $tType,C3: A,A6: set @ A,B4: set @ A] :
      ( ( member @ A @ C3 @ ( sup_sup @ ( set @ A ) @ A6 @ B4 ) )
     => ( ~ ( member @ A @ C3 @ A6 )
       => ( member @ A @ C3 @ B4 ) ) ) ).

% UnE
thf(fact_118_process_Opred__transfer,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] :
      ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ ( ( proces634752977rocess @ A ) > $o ) @ ( ( proces634752977rocess @ B ) > $o )
      @ ( bNF_rel_fun @ A @ B @ $o @ $o @ R
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
      @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ $o @ $o @ ( proces749077512rocess @ A @ B @ R )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
      @ ( proces1205983068rocess @ A )
      @ ( proces1205983068rocess @ B ) ) ).

% process.pred_transfer
thf(fact_119_Let__transfer,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o] :
      ( bNF_rel_fun @ A @ B @ ( ( A > C ) > C ) @ ( ( B > D ) > D ) @ A6 @ ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ C @ D @ ( bNF_rel_fun @ A @ B @ C @ D @ A6 @ B4 ) @ B4 )
      @ ^ [S2: A,F3: A > C] : ( F3 @ S2 )
      @ ^ [S2: B,F3: B > D] : ( F3 @ S2 ) ) ).

% Let_transfer
thf(fact_120_let__rsp,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > B > $o,R22: C > D > $o] :
      ( bNF_rel_fun @ A @ B @ ( ( A > C ) > C ) @ ( ( B > D ) > D ) @ R1 @ ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ C @ D @ ( bNF_rel_fun @ A @ B @ C @ D @ R1 @ R22 ) @ R22 )
      @ ^ [S2: A,F3: A > C] : ( F3 @ S2 )
      @ ^ [S2: B,F3: B > D] : ( F3 @ S2 ) ) ).

% let_rsp
thf(fact_121_sup_Oright__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A2: A,B2: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ A2 @ B2 ) @ B2 )
          = ( sup_sup @ A @ A2 @ B2 ) ) ) ).

% sup.right_idem
thf(fact_122_sup__left__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X: A,Y: A] :
          ( ( sup_sup @ A @ X @ ( sup_sup @ A @ X @ Y ) )
          = ( sup_sup @ A @ X @ Y ) ) ) ).

% sup_left_idem
thf(fact_123_sup_Oleft__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A2: A,B2: A] :
          ( ( sup_sup @ A @ A2 @ ( sup_sup @ A @ A2 @ B2 ) )
          = ( sup_sup @ A @ A2 @ B2 ) ) ) ).

% sup.left_idem
thf(fact_124_sup__apply,axiom,
    ! [B: $tType,A: $tType] :
      ( ( semilattice_sup @ B @ ( type2 @ B ) )
     => ( ( sup_sup @ ( A > B ) )
        = ( ^ [F3: A > B,G2: A > B,X4: A] : ( sup_sup @ B @ ( F3 @ X4 ) @ ( G2 @ X4 ) ) ) ) ) ).

% sup_apply
thf(fact_125_sup_Oidem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A2: A] :
          ( ( sup_sup @ A @ A2 @ A2 )
          = A2 ) ) ).

% sup.idem
thf(fact_126_sup__idem,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X: A] :
          ( ( sup_sup @ A @ X @ X )
          = X ) ) ).

% sup_idem
thf(fact_127_rel__funE,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o,F: A > C,G: B > D,X: A,Y: B] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ A6 @ B4 @ F @ G )
     => ( ( A6 @ X @ Y )
       => ( B4 @ ( F @ X ) @ ( G @ Y ) ) ) ) ).

% rel_funE
thf(fact_128_rel__funD2,axiom,
    ! [B: $tType,C: $tType,A: $tType,A6: A > A > $o,B4: B > C > $o,F: A > B,G: A > C,X: A] :
      ( ( bNF_rel_fun @ A @ A @ B @ C @ A6 @ B4 @ F @ G )
     => ( ( A6 @ X @ X )
       => ( B4 @ ( F @ X ) @ ( G @ X ) ) ) ) ).

% rel_funD2
thf(fact_129_inf__sup__aci_I8_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X: A,Y: A] :
          ( ( sup_sup @ A @ X @ ( sup_sup @ A @ X @ Y ) )
          = ( sup_sup @ A @ X @ Y ) ) ) ).

% inf_sup_aci(8)
thf(fact_130_inf__sup__aci_I7_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X: A,Y: A,Z4: A] :
          ( ( sup_sup @ A @ X @ ( sup_sup @ A @ Y @ Z4 ) )
          = ( sup_sup @ A @ Y @ ( sup_sup @ A @ X @ Z4 ) ) ) ) ).

% inf_sup_aci(7)
thf(fact_131_inf__sup__aci_I6_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ! [X: A,Y: A,Z4: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ X @ Y ) @ Z4 )
          = ( sup_sup @ A @ X @ ( sup_sup @ A @ Y @ Z4 ) ) ) ) ).

% inf_sup_aci(6)
thf(fact_132_inf__sup__aci_I5_J,axiom,
    ! [A: $tType] :
      ( ( lattice @ A @ ( type2 @ A ) )
     => ( ( sup_sup @ A )
        = ( ^ [X4: A,Y4: A] : ( sup_sup @ A @ Y4 @ X4 ) ) ) ) ).

% inf_sup_aci(5)
thf(fact_133_sup__fun__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( semilattice_sup @ B @ ( type2 @ B ) )
     => ( ( sup_sup @ ( A > B ) )
        = ( ^ [F3: A > B,G2: A > B,X4: A] : ( sup_sup @ B @ ( F3 @ X4 ) @ ( G2 @ X4 ) ) ) ) ) ).

% sup_fun_def
thf(fact_134_sup_Oassoc,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [A2: A,B2: A,C3: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ A2 @ B2 ) @ C3 )
          = ( sup_sup @ A @ A2 @ ( sup_sup @ A @ B2 @ C3 ) ) ) ) ).

% sup.assoc
thf(fact_135_sup__assoc,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X: A,Y: A,Z4: A] :
          ( ( sup_sup @ A @ ( sup_sup @ A @ X @ Y ) @ Z4 )
          = ( sup_sup @ A @ X @ ( sup_sup @ A @ Y @ Z4 ) ) ) ) ).

% sup_assoc
thf(fact_136_sup_Ocommute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ( ( sup_sup @ A )
        = ( ^ [A7: A,B3: A] : ( sup_sup @ A @ B3 @ A7 ) ) ) ) ).

% sup.commute
thf(fact_137_sup__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ( ( sup_sup @ A )
        = ( ^ [X4: A,Y4: A] : ( sup_sup @ A @ Y4 @ X4 ) ) ) ) ).

% sup_commute
thf(fact_138_sup_Oleft__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [B2: A,A2: A,C3: A] :
          ( ( sup_sup @ A @ B2 @ ( sup_sup @ A @ A2 @ C3 ) )
          = ( sup_sup @ A @ A2 @ ( sup_sup @ A @ B2 @ C3 ) ) ) ) ).

% sup.left_commute
thf(fact_139_sup__left__commute,axiom,
    ! [A: $tType] :
      ( ( semilattice_sup @ A @ ( type2 @ A ) )
     => ! [X: A,Y: A,Z4: A] :
          ( ( sup_sup @ A @ X @ ( sup_sup @ A @ Y @ Z4 ) )
          = ( sup_sup @ A @ Y @ ( sup_sup @ A @ X @ Z4 ) ) ) ) ).

% sup_left_commute
thf(fact_140_ball__reg,axiom,
    ! [A: $tType,R: set @ A,P5: A > $o,Q5: A > $o] :
      ( ! [X3: A] :
          ( ( member @ A @ X3 @ R )
         => ( ( P5 @ X3 )
           => ( Q5 @ X3 ) ) )
     => ( ! [X3: A] :
            ( ( member @ A @ X3 @ R )
           => ( P5 @ X3 ) )
       => ! [X5: A] :
            ( ( member @ A @ X5 @ R )
           => ( Q5 @ X5 ) ) ) ) ).

% ball_reg
thf(fact_141_fun_Orel__transfer,axiom,
    ! [B: $tType,A: $tType,C: $tType,E2: $tType,D: $tType,Sa: A > C > $o,Sc: B > E2 > $o] :
      ( bNF_rel_fun @ ( A > B > $o ) @ ( C > E2 > $o ) @ ( ( D > A ) > ( D > B ) > $o ) @ ( ( D > C ) > ( D > E2 ) > $o )
      @ ( bNF_rel_fun @ A @ C @ ( B > $o ) @ ( E2 > $o ) @ Sa
        @ ( bNF_rel_fun @ B @ E2 @ $o @ $o @ Sc
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
      @ ( bNF_rel_fun @ ( D > A ) @ ( D > C ) @ ( ( D > B ) > $o ) @ ( ( D > E2 ) > $o )
        @ ( bNF_rel_fun @ D @ D @ A @ C
          @ ^ [Y3: D,Z3: D] : Y3 = Z3
          @ Sa )
        @ ( bNF_rel_fun @ ( D > B ) @ ( D > E2 ) @ $o @ $o
          @ ( bNF_rel_fun @ D @ D @ B @ E2
            @ ^ [Y3: D,Z3: D] : Y3 = Z3
            @ Sc )
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
      @ ( bNF_rel_fun @ D @ D @ A @ B
        @ ^ [Y3: D,Z3: D] : Y3 = Z3 )
      @ ( bNF_rel_fun @ D @ D @ C @ E2
        @ ^ [Y3: D,Z3: D] : Y3 = Z3 ) ) ).

% fun.rel_transfer
thf(fact_142_rel__funI,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o,F: A > C,G: B > D] :
      ( ! [X3: A,Y5: B] :
          ( ( A6 @ X3 @ Y5 )
         => ( B4 @ ( F @ X3 ) @ ( G @ Y5 ) ) )
     => ( bNF_rel_fun @ A @ B @ C @ D @ A6 @ B4 @ F @ G ) ) ).

% rel_funI
thf(fact_143_If__transfer,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( bNF_rel_fun @ $o @ $o @ ( A > A > A ) @ ( B > B > B )
      @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
      @ ( bNF_rel_fun @ A @ B @ ( A > A ) @ ( B > B ) @ A6 @ ( bNF_rel_fun @ A @ B @ A @ B @ A6 @ A6 ) )
      @ ( if @ A )
      @ ( if @ B ) ) ).

% If_transfer
thf(fact_144_rel__fun__def__butlast,axiom,
    ! [B: $tType,D: $tType,C: $tType,E2: $tType,F4: $tType,A: $tType,R: A > B > $o,S: C > E2 > $o,T: D > F4 > $o,F: A > C > D,G: B > E2 > F4] :
      ( ( bNF_rel_fun @ A @ B @ ( C > D ) @ ( E2 > F4 ) @ R @ ( bNF_rel_fun @ C @ E2 @ D @ F4 @ S @ T ) @ F @ G )
      = ( ! [X4: A,Y4: B] :
            ( ( R @ X4 @ Y4 )
           => ( bNF_rel_fun @ C @ E2 @ D @ F4 @ S @ T @ ( F @ X4 ) @ ( G @ Y4 ) ) ) ) ) ).

% rel_fun_def_butlast
thf(fact_145_fun_Orel__refl,axiom,
    ! [B: $tType,D: $tType,Ra: B > B > $o,X: D > B] :
      ( ! [X3: B] : ( Ra @ X3 @ X3 )
     => ( bNF_rel_fun @ D @ D @ B @ B
        @ ^ [Y3: D,Z3: D] : Y3 = Z3
        @ Ra
        @ X
        @ X ) ) ).

% fun.rel_refl
thf(fact_146_fun_Orel__eq,axiom,
    ! [A: $tType,D: $tType] :
      ( ( bNF_rel_fun @ D @ D @ A @ A
        @ ^ [Y3: D,Z3: D] : Y3 = Z3
        @ ^ [Y3: A,Z3: A] : Y3 = Z3 )
      = ( ^ [Y3: D > A,Z3: D > A] : Y3 = Z3 ) ) ).

% fun.rel_eq
thf(fact_147_rel__fun__mono_H,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,Y6: A > B > $o,X6: A > B > $o,A6: C > D > $o,B4: C > D > $o,F: A > C,G: B > D] :
      ( ! [X3: A,Y5: B] :
          ( ( Y6 @ X3 @ Y5 )
         => ( X6 @ X3 @ Y5 ) )
     => ( ! [X3: C,Y5: D] :
            ( ( A6 @ X3 @ Y5 )
           => ( B4 @ X3 @ Y5 ) )
       => ( ( bNF_rel_fun @ A @ B @ C @ D @ X6 @ A6 @ F @ G )
         => ( bNF_rel_fun @ A @ B @ C @ D @ Y6 @ B4 @ F @ G ) ) ) ) ).

% rel_fun_mono'
thf(fact_148_rel__fun__mono,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,X6: A > B > $o,A6: C > D > $o,F: A > C,G: B > D,Y6: A > B > $o,B4: C > D > $o] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ X6 @ A6 @ F @ G )
     => ( ! [X3: A,Y5: B] :
            ( ( Y6 @ X3 @ Y5 )
           => ( X6 @ X3 @ Y5 ) )
       => ( ! [X3: C,Y5: D] :
              ( ( A6 @ X3 @ Y5 )
             => ( B4 @ X3 @ Y5 ) )
         => ( bNF_rel_fun @ A @ B @ C @ D @ Y6 @ B4 @ F @ G ) ) ) ) ).

% rel_fun_mono
thf(fact_149_rel__funD,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o,F: A > C,G: B > D,X: A,Y: B] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ A6 @ B4 @ F @ G )
     => ( ( A6 @ X @ Y )
       => ( B4 @ ( F @ X ) @ ( G @ Y ) ) ) ) ).

% rel_funD
thf(fact_150_eq__onp__live__step,axiom,
    ! [A: $tType,X: $o,Y: $o,P5: A > $o,A2: A] :
      ( ( X = Y )
     => ( ( ( bNF_eq_onp @ A @ P5 @ A2 @ A2 )
          & X )
        = ( ( P5 @ A2 )
          & Y ) ) ) ).

% eq_onp_live_step
thf(fact_151_eq__onp__same__args,axiom,
    ! [A: $tType,P5: A > $o,X: A] :
      ( ( bNF_eq_onp @ A @ P5 @ X @ X )
      = ( P5 @ X ) ) ).

% eq_onp_same_args
thf(fact_152_eq__onp__to__eq,axiom,
    ! [A: $tType,P5: A > $o,X: A,Y: A] :
      ( ( bNF_eq_onp @ A @ P5 @ X @ Y )
     => ( X = Y ) ) ).

% eq_onp_to_eq
thf(fact_153_eq__onp__mono0,axiom,
    ! [A: $tType,A6: set @ A,P5: A > $o,Q5: A > $o] :
      ( ! [X3: A] :
          ( ( member @ A @ X3 @ A6 )
         => ( ( P5 @ X3 )
           => ( Q5 @ X3 ) ) )
     => ! [X5: A] :
          ( ( member @ A @ X5 @ A6 )
         => ! [Xa3: A] :
              ( ( member @ A @ Xa3 @ A6 )
             => ( ( bNF_eq_onp @ A @ P5 @ X5 @ Xa3 )
               => ( bNF_eq_onp @ A @ Q5 @ X5 @ Xa3 ) ) ) ) ) ).

% eq_onp_mono0
thf(fact_154_eq__onp__eqD,axiom,
    ! [A: $tType,P5: A > $o,Q5: A > A > $o,X: A] :
      ( ( ( bNF_eq_onp @ A @ P5 )
        = Q5 )
     => ( ( P5 @ X )
        = ( Q5 @ X @ X ) ) ) ).

% eq_onp_eqD
thf(fact_155_map__fun__parametric,axiom,
    ! [A: $tType,B: $tType,E2: $tType,F4: $tType,H: $tType,G3: $tType,D: $tType,C: $tType,A6: A > C > $o,B4: B > D > $o,C2: E2 > G3 > $o,D2: F4 > H > $o] : ( bNF_rel_fun @ ( A > B ) @ ( C > D ) @ ( ( E2 > F4 ) > ( B > E2 ) > A > F4 ) @ ( ( G3 > H ) > ( D > G3 ) > C > H ) @ ( bNF_rel_fun @ A @ C @ B @ D @ A6 @ B4 ) @ ( bNF_rel_fun @ ( E2 > F4 ) @ ( G3 > H ) @ ( ( B > E2 ) > A > F4 ) @ ( ( D > G3 ) > C > H ) @ ( bNF_rel_fun @ E2 @ G3 @ F4 @ H @ C2 @ D2 ) @ ( bNF_rel_fun @ ( B > E2 ) @ ( D > G3 ) @ ( A > F4 ) @ ( C > H ) @ ( bNF_rel_fun @ B @ D @ E2 @ G3 @ B4 @ C2 ) @ ( bNF_rel_fun @ A @ C @ F4 @ H @ A6 @ D2 ) ) ) @ ( map_fun @ A @ B @ E2 @ F4 ) @ ( map_fun @ C @ D @ G3 @ H ) ) ).

% map_fun_parametric
thf(fact_156_process_Omap__transfer,axiom,
    ! [A: $tType,B: $tType,F4: $tType,E2: $tType,Rb: A > E2 > $o,Sd: B > F4 > $o] : ( bNF_rel_fun @ ( A > B ) @ ( E2 > F4 ) @ ( ( proces634752977rocess @ A ) > ( proces634752977rocess @ B ) ) @ ( ( proces634752977rocess @ E2 ) > ( proces634752977rocess @ F4 ) ) @ ( bNF_rel_fun @ A @ E2 @ B @ F4 @ Rb @ Sd ) @ ( bNF_rel_fun @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ E2 ) @ ( proces634752977rocess @ B ) @ ( proces634752977rocess @ F4 ) @ ( proces749077512rocess @ A @ E2 @ Rb ) @ ( proces749077512rocess @ B @ F4 @ Sd ) ) @ ( proces370407749rocess @ A @ B ) @ ( proces370407749rocess @ E2 @ F4 ) ) ).

% process.map_transfer
thf(fact_157_if__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( bNF_rel_fun @ $o @ $o @ ( A > A > A ) @ ( A > A > A )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ( bNF_rel_fun @ A @ A @ ( A > A ) @ ( A > A ) @ R @ ( bNF_rel_fun @ A @ A @ A @ A @ R @ R ) )
        @ ( if @ A )
        @ ( if @ A ) ) ) ).

% if_rsp
thf(fact_158_process_Omap__disc__iff_I1_J,axiom,
    ! [B: $tType,A: $tType,F: A > B,A2: proces634752977rocess @ A] :
      ( ( proces10484146Action @ B @ ( proces370407749rocess @ A @ B @ F @ A2 ) )
      = ( proces10484146Action @ A @ A2 ) ) ).

% process.map_disc_iff(1)
thf(fact_159_process_Omap__disc__iff_I2_J,axiom,
    ! [B: $tType,A: $tType,F: A > B,A2: proces634752977rocess @ A] :
      ( ( proces401113213Choice @ B @ ( proces370407749rocess @ A @ B @ F @ A2 ) )
      = ( proces401113213Choice @ A @ A2 ) ) ).

% process.map_disc_iff(2)
thf(fact_160_apply__rspQ3,axiom,
    ! [B: $tType,C: $tType,A: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,R22: C > C > $o,F: A > C,G: A > C,X: A,Y: A] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( bNF_rel_fun @ A @ A @ C @ C @ R1 @ R22 @ F @ G )
       => ( ( R1 @ X @ Y )
         => ( R22 @ ( F @ X ) @ ( G @ Y ) ) ) ) ) ).

% apply_rspQ3
thf(fact_161_apply__rspQ3_H_H,axiom,
    ! [C: $tType,A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,S: C > C > $o,F: A > C,X: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( bNF_rel_fun @ A @ A @ C @ C @ R @ S @ F @ F )
       => ( S @ ( F @ ( Rep @ X ) ) @ ( F @ ( Rep @ X ) ) ) ) ) ).

% apply_rspQ3''
thf(fact_162_fun__quotient3,axiom,
    ! [A: $tType,B: $tType,C: $tType,D: $tType,R1: A > A > $o,Abs12: A > B,Rep12: B > A,R22: C > C > $o,Abs2: C > D,Rep2: D > C] :
      ( ( quotient3 @ A @ B @ R1 @ Abs12 @ Rep12 )
     => ( ( quotient3 @ C @ D @ R22 @ Abs2 @ Rep2 )
       => ( quotient3 @ ( A > C ) @ ( B > D ) @ ( bNF_rel_fun @ A @ A @ C @ C @ R1 @ R22 ) @ ( map_fun @ B @ A @ C @ D @ Rep12 @ Abs2 ) @ ( map_fun @ A @ B @ D @ C @ Abs12 @ Rep2 ) ) ) ) ).

% fun_quotient3
thf(fact_163_process_Oinj__map__strong,axiom,
    ! [B: $tType,A: $tType,X: proces634752977rocess @ A,Xa2: proces634752977rocess @ A,F: A > B,Fa: A > B] :
      ( ! [Z: A,Za: A] :
          ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ X ) )
         => ( ( member @ A @ Za @ ( proces1148692671rocess @ A @ Xa2 ) )
           => ( ( ( F @ Z )
                = ( Fa @ Za ) )
             => ( Z = Za ) ) ) )
     => ( ( ( proces370407749rocess @ A @ B @ F @ X )
          = ( proces370407749rocess @ A @ B @ Fa @ Xa2 ) )
       => ( X = Xa2 ) ) ) ).

% process.inj_map_strong
thf(fact_164_process_Omap__cong0,axiom,
    ! [B: $tType,A: $tType,X: proces634752977rocess @ A,F: A > B,G: A > B] :
      ( ! [Z: A] :
          ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ X ) )
         => ( ( F @ Z )
            = ( G @ Z ) ) )
     => ( ( proces370407749rocess @ A @ B @ F @ X )
        = ( proces370407749rocess @ A @ B @ G @ X ) ) ) ).

% process.map_cong0
thf(fact_165_process_Omap__cong,axiom,
    ! [B: $tType,A: $tType,X: proces634752977rocess @ A,Ya: proces634752977rocess @ A,F: A > B,G: A > B] :
      ( ( X = Ya )
     => ( ! [Z: A] :
            ( ( member @ A @ Z @ ( proces1148692671rocess @ A @ Ya ) )
           => ( ( F @ Z )
              = ( G @ Z ) ) )
       => ( ( proces370407749rocess @ A @ B @ F @ X )
          = ( proces370407749rocess @ A @ B @ G @ Ya ) ) ) ) ).

% process.map_cong
thf(fact_166_process_Osimps_I15_J,axiom,
    ! [B: $tType,A: $tType,F: A > B,X11: A,X12: proces634752977rocess @ A] :
      ( ( proces370407749rocess @ A @ B @ F @ ( proces1525233512Action @ A @ X11 @ X12 ) )
      = ( proces1525233512Action @ B @ ( F @ X11 ) @ ( proces370407749rocess @ A @ B @ F @ X12 ) ) ) ).

% process.simps(15)
thf(fact_167_process_Osimps_I16_J,axiom,
    ! [B: $tType,A: $tType,F: A > B,X21: proces634752977rocess @ A,X22: proces634752977rocess @ A] :
      ( ( proces370407749rocess @ A @ B @ F @ ( proces1915862579Choice @ A @ X21 @ X22 ) )
      = ( proces1915862579Choice @ B @ ( proces370407749rocess @ A @ B @ F @ X21 ) @ ( proces370407749rocess @ A @ B @ F @ X22 ) ) ) ).

% process.simps(16)
thf(fact_168_Quotient3__rep__reflp,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,A2: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( R @ ( Rep @ A2 ) @ ( Rep @ A2 ) ) ) ).

% Quotient3_rep_reflp
thf(fact_169_Quotient3__rep__abs,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R3: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R3 @ R3 )
       => ( R @ ( Rep @ ( Abs @ R3 ) ) @ R3 ) ) ) ).

% Quotient3_rep_abs
thf(fact_170_Quotient3__rel__rep,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,A2: B,B2: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ ( Rep @ A2 ) @ ( Rep @ B2 ) )
        = ( A2 = B2 ) ) ) ).

% Quotient3_rel_rep
thf(fact_171_Quotient3__rel__abs,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R3: A,S3: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R3 @ S3 )
       => ( ( Abs @ R3 )
          = ( Abs @ S3 ) ) ) ) ).

% Quotient3_rel_abs
thf(fact_172_Quotient3__abs__rep,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,A2: B] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( Abs @ ( Rep @ A2 ) )
        = A2 ) ) ).

% Quotient3_abs_rep
thf(fact_173_rep__abs__rsp__left,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,X13: A,X23: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ X13 @ X23 )
       => ( R @ ( Rep @ ( Abs @ X13 ) ) @ X23 ) ) ) ).

% rep_abs_rsp_left
thf(fact_174_Quotient3__refl2,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R3: A,S3: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R3 @ S3 )
       => ( R @ S3 @ S3 ) ) ) ).

% Quotient3_refl2
thf(fact_175_Quotient3__refl1,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R3: A,S3: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ R3 @ S3 )
       => ( R @ R3 @ R3 ) ) ) ).

% Quotient3_refl1
thf(fact_176_Quotient3__rel,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,R3: A,S3: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( ( R @ R3 @ R3 )
          & ( R @ S3 @ S3 )
          & ( ( Abs @ R3 )
            = ( Abs @ S3 ) ) )
        = ( R @ R3 @ S3 ) ) ) ).

% Quotient3_rel
thf(fact_177_Quotient3__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( quotient3 @ A @ B )
      = ( ^ [R2: A > A > $o,Abs3: A > B,Rep3: B > A] :
            ( ! [A7: B] :
                ( ( Abs3 @ ( Rep3 @ A7 ) )
                = A7 )
            & ! [A7: B] : ( R2 @ ( Rep3 @ A7 ) @ ( Rep3 @ A7 ) )
            & ! [R4: A,S2: A] :
                ( ( R2 @ R4 @ S2 )
                = ( ( R2 @ R4 @ R4 )
                  & ( R2 @ S2 @ S2 )
                  & ( ( Abs3 @ R4 )
                    = ( Abs3 @ S2 ) ) ) ) ) ) ) ).

% Quotient3_def
thf(fact_178_rep__abs__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,X13: A,X23: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ X13 @ X23 )
       => ( R @ X13 @ ( Rep @ ( Abs @ X23 ) ) ) ) ) ).

% rep_abs_rsp
thf(fact_179_equals__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A,Xa2: A,Xb2: A,Ya: A,Yb2: A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( R @ Xa2 @ Xb2 )
       => ( ( R @ Ya @ Yb2 )
         => ( ( R @ Xa2 @ Ya )
            = ( R @ Xb2 @ Yb2 ) ) ) ) ) ).

% equals_rsp
thf(fact_180_Quotient3I,axiom,
    ! [B: $tType,A: $tType,Abs: B > A,Rep: A > B,R: B > B > $o] :
      ( ! [A4: A] :
          ( ( Abs @ ( Rep @ A4 ) )
          = A4 )
     => ( ! [A4: A] : ( R @ ( Rep @ A4 ) @ ( Rep @ A4 ) )
       => ( ! [R5: B,S4: B] :
              ( ( R @ R5 @ S4 )
              = ( ( R @ R5 @ R5 )
                & ( R @ S4 @ S4 )
                & ( ( Abs @ R5 )
                  = ( Abs @ S4 ) ) ) )
         => ( quotient3 @ B @ A @ R @ Abs @ Rep ) ) ) ) ).

% Quotient3I
thf(fact_181_cond__prs,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Absf: A > B,Repf: B > A,A2: $o,B2: B,C3: B] :
      ( ( quotient3 @ A @ B @ R @ Absf @ Repf )
     => ( ( A2
         => ( ( Absf @ ( if @ A @ A2 @ ( Repf @ B2 ) @ ( Repf @ C3 ) ) )
            = B2 ) )
        & ( ~ A2
         => ( ( Absf @ ( if @ A @ A2 @ ( Repf @ B2 ) @ ( Repf @ C3 ) ) )
            = C3 ) ) ) ) ).

% cond_prs
thf(fact_182_let__prs,axiom,
    ! [C: $tType,A: $tType,B: $tType,D: $tType,R1: A > A > $o,Abs1: A > B,Rep1: B > A,R22: C > C > $o,Abs22: C > D,Rep22: D > C] :
      ( ( quotient3 @ A @ B @ R1 @ Abs1 @ Rep1 )
     => ( ( quotient3 @ C @ D @ R22 @ Abs22 @ Rep22 )
       => ( ( map_fun @ D @ C @ ( ( C > A ) > A ) @ ( ( D > B ) > B ) @ Rep22 @ ( map_fun @ ( D > B ) @ ( C > A ) @ A @ B @ ( map_fun @ C @ D @ B @ A @ Abs22 @ Rep1 ) @ Abs1 )
            @ ^ [S2: C,F3: C > A] : ( F3 @ S2 ) )
          = ( ^ [S2: D,F3: D > B] : ( F3 @ S2 ) ) ) ) ) ).

% let_prs
thf(fact_183_quot__rel__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Abs: A > B,Rep: B > A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( bNF_rel_fun @ A @ A @ ( A > $o ) @ ( A > $o ) @ R
        @ ( bNF_rel_fun @ A @ A @ $o @ $o @ R
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ R
        @ R ) ) ).

% quot_rel_rsp
thf(fact_184_process_Omap__sel_I2_J,axiom,
    ! [B: $tType,A: $tType,A2: proces634752977rocess @ A,F: A > B] :
      ( ( proces10484146Action @ A @ A2 )
     => ( ( proces1778668539contOf @ B @ ( proces370407749rocess @ A @ B @ F @ A2 ) )
        = ( proces370407749rocess @ A @ B @ F @ ( proces1778668539contOf @ A @ A2 ) ) ) ) ).

% process.map_sel(2)
thf(fact_185_process_Omap__sel_I1_J,axiom,
    ! [B: $tType,A: $tType,A2: proces634752977rocess @ A,F: A > B] :
      ( ( proces10484146Action @ A @ A2 )
     => ( ( proces745025900prefOf @ B @ ( proces370407749rocess @ A @ B @ F @ A2 ) )
        = ( F @ ( proces745025900prefOf @ A @ A2 ) ) ) ) ).

% process.map_sel(1)
thf(fact_186_process_Omap__sel_I4_J,axiom,
    ! [B: $tType,A: $tType,A2: proces634752977rocess @ A,F: A > B] :
      ( ( proces401113213Choice @ A @ A2 )
     => ( ( proces988026546_ch2Of @ B @ ( proces370407749rocess @ A @ B @ F @ A2 ) )
        = ( proces370407749rocess @ A @ B @ F @ ( proces988026546_ch2Of @ A @ A2 ) ) ) ) ).

% process.map_sel(4)
thf(fact_187_process_Omap__sel_I3_J,axiom,
    ! [B: $tType,A: $tType,A2: proces634752977rocess @ A,F: A > B] :
      ( ( proces401113213Choice @ A @ A2 )
     => ( ( proces979765041_ch1Of @ B @ ( proces370407749rocess @ A @ B @ F @ A2 ) )
        = ( proces370407749rocess @ A @ B @ F @ ( proces979765041_ch1Of @ A @ A2 ) ) ) ) ).

% process.map_sel(3)
thf(fact_188_bex1__rel__rsp,axiom,
    ! [B: $tType,A: $tType,R: A > A > $o,Absf: A > B,Repf: B > A] :
      ( ( quotient3 @ A @ B @ R @ Absf @ Repf )
     => ( bNF_rel_fun @ ( A > $o ) @ ( A > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ A @ $o @ $o @ R
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ( bex1_rel @ A @ R )
        @ ( bex1_rel @ A @ R ) ) ) ).

% bex1_rel_rsp
thf(fact_189_fun__ord__parametric,axiom,
    ! [C: $tType,D: $tType,A: $tType,B: $tType,F4: $tType,E2: $tType,C2: A > B > $o,A6: C > E2 > $o,B4: D > F4 > $o] :
      ( ( bi_total @ A @ B @ C2 )
     => ( bNF_rel_fun @ ( C > D > $o ) @ ( E2 > F4 > $o ) @ ( ( A > C ) > ( A > D ) > $o ) @ ( ( B > E2 ) > ( B > F4 ) > $o )
        @ ( bNF_rel_fun @ C @ E2 @ ( D > $o ) @ ( F4 > $o ) @ A6
          @ ( bNF_rel_fun @ D @ F4 @ $o @ $o @ B4
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ( bNF_rel_fun @ ( A > C ) @ ( B > E2 ) @ ( ( A > D ) > $o ) @ ( ( B > F4 ) > $o ) @ ( bNF_rel_fun @ A @ B @ C @ E2 @ C2 @ A6 )
          @ ( bNF_rel_fun @ ( A > D ) @ ( B > F4 ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ D @ F4 @ C2 @ B4 )
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ( partial_fun_ord @ C @ D @ A )
        @ ( partial_fun_ord @ E2 @ F4 @ B ) ) ) ).

% fun_ord_parametric
thf(fact_190_apply__rsp_H,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,R1: A > B > $o,R22: C > D > $o,F: A > C,G: B > D,X: A,Y: B] :
      ( ( bNF_rel_fun @ A @ B @ C @ D @ R1 @ R22 @ F @ G )
     => ( ( R1 @ X @ Y )
       => ( R22 @ ( F @ X ) @ ( G @ Y ) ) ) ) ).

% apply_rsp'
thf(fact_191_bi__total__eq,axiom,
    ! [A: $tType] :
      ( bi_total @ A @ A
      @ ^ [Y3: A,Z3: A] : Y3 = Z3 ) ).

% bi_total_eq
thf(fact_192_bex1__rel__aux,axiom,
    ! [A: $tType,R: A > A > $o,X: A > $o,Y: A > $o] :
      ( ! [Xa: A,Ya2: A] :
          ( ( R @ Xa @ Ya2 )
         => ( ( X @ Xa )
            = ( Y @ Ya2 ) ) )
     => ( ( bex1_rel @ A @ R @ X )
       => ( bex1_rel @ A @ R @ Y ) ) ) ).

% bex1_rel_aux
thf(fact_193_bi__total__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_total @ A @ B )
      = ( ^ [R2: A > B > $o] :
            ( ! [X4: A] :
                ( ^ [P7: B > $o] :
                  ? [X7: B] : ( P7 @ X7 )
                @ ( R2 @ X4 ) )
            & ! [Y4: B] :
              ? [X4: A] : ( R2 @ X4 @ Y4 ) ) ) ) ).

% bi_total_def
thf(fact_194_bex1__rel__aux2,axiom,
    ! [A: $tType,R: A > A > $o,X: A > $o,Y: A > $o] :
      ( ! [Xa: A,Ya2: A] :
          ( ( R @ Xa @ Ya2 )
         => ( ( X @ Xa )
            = ( Y @ Ya2 ) ) )
     => ( ( bex1_rel @ A @ R @ Y )
       => ( bex1_rel @ A @ R @ X ) ) ) ).

% bex1_rel_aux2
thf(fact_195_process_Obi__total__rel,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( bi_total @ A @ B @ R )
     => ( bi_total @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces749077512rocess @ A @ B @ R ) ) ) ).

% process.bi_total_rel
thf(fact_196_monotone__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ ( ( C > C > $o ) > ( A > C ) > $o ) @ ( ( D > D > $o ) > ( B > D ) > $o )
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A6
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ( bNF_rel_fun @ ( C > C > $o ) @ ( D > D > $o ) @ ( ( A > C ) > $o ) @ ( ( B > D ) > $o )
          @ ( bNF_rel_fun @ C @ D @ ( C > $o ) @ ( D > $o ) @ B4
            @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B4
              @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
          @ ( bNF_rel_fun @ ( A > C ) @ ( B > D ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ C @ D @ A6 @ B4 )
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ( comple1396247847notone @ A @ C )
        @ ( comple1396247847notone @ B @ D ) ) ) ).

% monotone_parametric
thf(fact_197_transfer__forall__transfer_I1_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ( transfer_forall @ A )
        @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(1)
thf(fact_198_transfer__forall__transfer_I4_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ rev_implies
        @ ( transfer_forall @ A )
        @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(4)
thf(fact_199_transfer__forall__transfer_I5_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6 @ rev_implies ) @ rev_implies @ ( transfer_forall @ A ) @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(5)
thf(fact_200_rev__implies__def,axiom,
    ( rev_implies
    = ( ^ [X4: $o,Y4: $o] :
          ( Y4
         => X4 ) ) ) ).

% rev_implies_def
thf(fact_201_Domainp__transfer,axiom,
    ! [C: $tType,A: $tType,B: $tType,D: $tType,B4: A > B > $o,A6: C > D > $o] :
      ( ( bi_total @ A @ B @ B4 )
     => ( bNF_rel_fun @ ( C > A > $o ) @ ( D > B > $o ) @ ( C > $o ) @ ( D > $o )
        @ ( bNF_rel_fun @ C @ D @ ( A > $o ) @ ( B > $o ) @ A6
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ B4
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ( bNF_rel_fun @ C @ D @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ ( domainp @ C @ A )
        @ ( domainp @ D @ B ) ) ) ).

% Domainp_transfer
thf(fact_202_reflp__transfer_I5_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A6
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ rev_implies
        @ ( reflp @ A )
        @ ( reflp @ B ) ) ) ).

% reflp_transfer(5)
thf(fact_203_process_Orel__reflp,axiom,
    ! [A: $tType,R: A > A > $o] :
      ( ( reflp @ A @ R )
     => ( reflp @ ( proces634752977rocess @ A ) @ ( proces749077512rocess @ A @ A @ R ) ) ) ).

% process.rel_reflp
thf(fact_204_process_ODomainp__rel,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( domainp @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces749077512rocess @ A @ B @ R ) )
      = ( proces1205983068rocess @ A @ ( domainp @ A @ B @ R ) ) ) ).

% process.Domainp_rel
thf(fact_205_Domainp__refl,axiom,
    ! [B: $tType,A: $tType] :
      ( ( domainp @ A @ B )
      = ( domainp @ A @ B ) ) ).

% Domainp_refl
thf(fact_206_Domainp__iff,axiom,
    ! [B: $tType,A: $tType] :
      ( ( domainp @ A @ B )
      = ( ^ [T2: A > B > $o,X4: A] :
            ( ^ [P7: B > $o] :
              ? [X7: B] : ( P7 @ X7 )
            @ ( T2 @ X4 ) ) ) ) ).

% Domainp_iff
thf(fact_207_fun_Orel__reflp,axiom,
    ! [D: $tType,A: $tType,R: A > A > $o] :
      ( ( reflp @ A @ R )
     => ( reflp @ ( D > A )
        @ ( bNF_rel_fun @ D @ D @ A @ A
          @ ^ [Y3: D,Z3: D] : Y3 = Z3
          @ R ) ) ) ).

% fun.rel_reflp
thf(fact_208_reflp__transfer_I1_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A6
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ( reflp @ A )
        @ ( reflp @ B ) ) ) ).

% reflp_transfer(1)
thf(fact_209_reflp__transfer_I4_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A6 @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6 @ rev_implies ) ) @ rev_implies @ ( reflp @ A ) @ ( reflp @ B ) ) ) ).

% reflp_transfer(4)
thf(fact_210_left__total__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( ( bi_total @ C @ D @ B4 )
       => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
          @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A6
            @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B4
              @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
          @ ( left_total @ A @ C )
          @ ( left_total @ B @ D ) ) ) ) ).

% left_total_parametric
thf(fact_211_reflp__transfer_I2_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A6 @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6 @ (=>) ) ) @ (=>) @ ( reflp @ A ) @ ( reflp @ B ) ) ) ).

% reflp_transfer(2)
thf(fact_212_bi__totalI,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( left_total @ A @ B @ R )
     => ( ( right_total @ A @ B @ R )
       => ( bi_total @ A @ B @ R ) ) ) ).

% bi_totalI
thf(fact_213_bi__total__alt__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_total @ A @ B )
      = ( ^ [A8: A > B > $o] :
            ( ( left_total @ A @ B @ A8 )
            & ( right_total @ A @ B @ A8 ) ) ) ) ).

% bi_total_alt_def
thf(fact_214_left__totalE,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] :
      ( ( left_total @ A @ B @ R )
     => ! [X5: A] :
        ? [X1: B] : ( R @ X5 @ X1 ) ) ).

% left_totalE
thf(fact_215_left__totalI,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ! [X3: A] :
        ? [X14: B] : ( R @ X3 @ X14 )
     => ( left_total @ A @ B @ R ) ) ).

% left_totalI
thf(fact_216_right__totalE,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o,Y: B] :
      ( ( right_total @ A @ B @ A6 )
     => ~ ! [X3: A] :
            ~ ( A6 @ X3 @ Y ) ) ).

% right_totalE
thf(fact_217_right__totalI,axiom,
    ! [A: $tType,B: $tType,A6: B > A > $o] :
      ( ! [Y5: A] :
        ? [X5: B] : ( A6 @ X5 @ Y5 )
     => ( right_total @ B @ A @ A6 ) ) ).

% right_totalI
thf(fact_218_left__total__eq,axiom,
    ! [A: $tType] :
      ( left_total @ A @ A
      @ ^ [Y3: A,Z3: A] : Y3 = Z3 ) ).

% left_total_eq
thf(fact_219_left__total__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( left_total @ A @ B )
      = ( ^ [R2: A > B > $o] :
          ! [X4: A] :
            ( ^ [P7: B > $o] :
              ? [X7: B] : ( P7 @ X7 )
            @ ( R2 @ X4 ) ) ) ) ).

% left_total_def
thf(fact_220_right__total__eq,axiom,
    ! [A: $tType] :
      ( right_total @ A @ A
      @ ^ [Y3: A,Z3: A] : Y3 = Z3 ) ).

% right_total_eq
thf(fact_221_right__total__def,axiom,
    ! [B: $tType,A: $tType] :
      ( ( right_total @ A @ B )
      = ( ^ [R2: A > B > $o] :
          ! [Y4: B] :
          ? [X4: A] : ( R2 @ X4 @ Y4 ) ) ) ).

% right_total_def
thf(fact_222_process_Oleft__total__rel,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( left_total @ A @ B @ R )
     => ( left_total @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces749077512rocess @ A @ B @ R ) ) ) ).

% process.left_total_rel
thf(fact_223_process_Oright__total__rel,axiom,
    ! [B: $tType,A: $tType,R: A > B > $o] :
      ( ( right_total @ A @ B @ R )
     => ( right_total @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces749077512rocess @ A @ B @ R ) ) ) ).

% process.right_total_rel
thf(fact_224_transfer__forall__transfer_I2_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ (=>)
        @ ( transfer_forall @ A )
        @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(2)
thf(fact_225_transfer__forall__transfer_I3_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6 @ (=>) ) @ (=>) @ ( transfer_forall @ A ) @ ( transfer_forall @ B ) ) ) ).

% transfer_forall_transfer(3)
thf(fact_226_right__total__parametric,axiom,
    ! [A: $tType,C: $tType,D: $tType,B: $tType,A6: A > B > $o,B4: C > D > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( ( bi_total @ C @ D @ B4 )
       => ( bNF_rel_fun @ ( A > C > $o ) @ ( B > D > $o ) @ $o @ $o
          @ ( bNF_rel_fun @ A @ B @ ( C > $o ) @ ( D > $o ) @ A6
            @ ( bNF_rel_fun @ C @ D @ $o @ $o @ B4
              @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
          @ ( right_total @ A @ C )
          @ ( right_total @ B @ D ) ) ) ) ).

% right_total_parametric
thf(fact_227_reflp__transfer_I3_J,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > A > $o ) @ ( B > B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ ( A > $o ) @ ( B > $o ) @ A6
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ (=>)
        @ ( reflp @ A )
        @ ( reflp @ B ) ) ) ).

% reflp_transfer(3)
thf(fact_228_Domainp__forall__transfer,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ( transfer_bforall @ A @ ( domainp @ A @ B @ A6 ) )
        @ ( transfer_forall @ B ) ) ) ).

% Domainp_forall_transfer
thf(fact_229_right__total__All__transfer,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ( ball @ A @ ( collect @ A @ ( domainp @ A @ B @ A6 ) ) )
        @ ^ [P7: B > $o] :
          ! [X7: B] : ( P7 @ X7 ) ) ) ).

% right_total_All_transfer
thf(fact_230_ball__reg__right,axiom,
    ! [A: $tType,R: set @ A,P5: A > $o,Q5: A > $o] :
      ( ! [X3: A] :
          ( ( member @ A @ X3 @ R )
         => ( ( P5 @ X3 )
           => ( Q5 @ X3 ) ) )
     => ( ! [X1: A] : ( P5 @ X1 )
       => ! [X5: A] :
            ( ( member @ A @ X5 @ R )
           => ( Q5 @ X5 ) ) ) ) ).

% ball_reg_right
thf(fact_231_transfer__forall__def,axiom,
    ! [A: $tType] :
      ( ( transfer_forall @ A )
      = ( ^ [P7: A > $o] :
          ! [X7: A] : ( P7 @ X7 ) ) ) ).

% transfer_forall_def
thf(fact_232_bi__total__alt__def2,axiom,
    ! [B: $tType,A: $tType] :
      ( ( bi_total @ A @ B )
      = ( ^ [R2: A > B > $o] :
            ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
            @ ( bNF_rel_fun @ A @ B @ $o @ $o @ R2
              @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
            @ ^ [P7: A > $o] :
              ! [X7: A] : ( P7 @ X7 )
            @ ^ [P7: B > $o] :
              ! [X7: B] : ( P7 @ X7 ) ) ) ) ).

% bi_total_alt_def2
thf(fact_233_All__transfer,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o
        @ ( bNF_rel_fun @ A @ B @ $o @ $o @ A6
          @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 )
        @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
        @ ^ [P7: A > $o] :
          ! [X7: A] : ( P7 @ X7 )
        @ ^ [P7: B > $o] :
          ! [X7: B] : ( P7 @ X7 ) ) ) ).

% All_transfer
thf(fact_234_right__total__alt__def2,axiom,
    ! [B: $tType,A: $tType] :
      ( ( right_total @ A @ B )
      = ( ^ [R2: A > B > $o] :
            ( bNF_rel_fun @ ( A > $o ) @ ( B > $o ) @ $o @ $o @ ( bNF_rel_fun @ A @ B @ $o @ $o @ R2 @ (=>) ) @ (=>)
            @ ^ [P7: A > $o] :
              ! [X7: A] : ( P7 @ X7 )
            @ ^ [P7: B > $o] :
              ! [X7: B] : ( P7 @ X7 ) ) ) ) ).

% right_total_alt_def2
thf(fact_235_relcompp__transfer,axiom,
    ! [C: $tType,A: $tType,E2: $tType,F4: $tType,B: $tType,D: $tType,B4: A > B > $o,A6: C > D > $o,C2: E2 > F4 > $o] :
      ( ( bi_total @ A @ B @ B4 )
     => ( bNF_rel_fun @ ( C > A > $o ) @ ( D > B > $o ) @ ( ( A > E2 > $o ) > C > E2 > $o ) @ ( ( B > F4 > $o ) > D > F4 > $o )
        @ ( bNF_rel_fun @ C @ D @ ( A > $o ) @ ( B > $o ) @ A6
          @ ( bNF_rel_fun @ A @ B @ $o @ $o @ B4
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
        @ ( bNF_rel_fun @ ( A > E2 > $o ) @ ( B > F4 > $o ) @ ( C > E2 > $o ) @ ( D > F4 > $o )
          @ ( bNF_rel_fun @ A @ B @ ( E2 > $o ) @ ( F4 > $o ) @ B4
            @ ( bNF_rel_fun @ E2 @ F4 @ $o @ $o @ C2
              @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) )
          @ ( bNF_rel_fun @ C @ D @ ( E2 > $o ) @ ( F4 > $o ) @ A6
            @ ( bNF_rel_fun @ E2 @ F4 @ $o @ $o @ C2
              @ ^ [Y3: $o,Z3: $o] : Y3 = Z3 ) ) )
        @ ( relcompp @ C @ A @ E2 )
        @ ( relcompp @ D @ B @ F4 ) ) ) ).

% relcompp_transfer
thf(fact_236_reflp__sup,axiom,
    ! [A: $tType,R3: A > A > $o,S3: A > A > $o] :
      ( ( reflp @ A @ R3 )
     => ( ( reflp @ A @ S3 )
       => ( reflp @ A @ ( sup_sup @ ( A > A > $o ) @ R3 @ S3 ) ) ) ) ).

% reflp_sup
thf(fact_237_sup2CI,axiom,
    ! [A: $tType,B: $tType,B4: A > B > $o,X: A,Y: B,A6: A > B > $o] :
      ( ( ~ ( B4 @ X @ Y )
       => ( A6 @ X @ Y ) )
     => ( sup_sup @ ( A > B > $o ) @ A6 @ B4 @ X @ Y ) ) ).

% sup2CI
thf(fact_238_relcompp__distrib,axiom,
    ! [A: $tType,B: $tType,C: $tType,R: A > C > $o,S: C > B > $o,T: C > B > $o] :
      ( ( relcompp @ A @ C @ B @ R @ ( sup_sup @ ( C > B > $o ) @ S @ T ) )
      = ( sup_sup @ ( A > B > $o ) @ ( relcompp @ A @ C @ B @ R @ S ) @ ( relcompp @ A @ C @ B @ R @ T ) ) ) ).

% relcompp_distrib
thf(fact_239_relcompp__distrib2,axiom,
    ! [A: $tType,B: $tType,C: $tType,S: A > C > $o,T: A > C > $o,R: C > B > $o] :
      ( ( relcompp @ A @ C @ B @ ( sup_sup @ ( A > C > $o ) @ S @ T ) @ R )
      = ( sup_sup @ ( A > B > $o ) @ ( relcompp @ A @ C @ B @ S @ R ) @ ( relcompp @ A @ C @ B @ T @ R ) ) ) ).

% relcompp_distrib2
thf(fact_240_left__total__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,R: A > B > $o,S: B > C > $o] :
      ( ( left_total @ A @ B @ R )
     => ( ( left_total @ B @ C @ S )
       => ( left_total @ A @ C @ ( relcompp @ A @ B @ C @ R @ S ) ) ) ) ).

% left_total_OO
thf(fact_241_right__total__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,A6: A > B > $o,B4: B > C > $o] :
      ( ( right_total @ A @ B @ A6 )
     => ( ( right_total @ B @ C @ B4 )
       => ( right_total @ A @ C @ ( relcompp @ A @ B @ C @ A6 @ B4 ) ) ) ) ).

% right_total_OO
thf(fact_242_pcr__Domainp__par__left__total,axiom,
    ! [A: $tType,B: $tType,C: $tType,B4: A > B > $o,P5: A > $o,A6: C > A > $o,P8: C > $o] :
      ( ( ( domainp @ A @ B @ B4 )
        = P5 )
     => ( ( left_total @ C @ A @ A6 )
       => ( ( bNF_rel_fun @ C @ A @ $o @ $o @ A6
            @ ^ [Y3: $o,Z3: $o] : Y3 = Z3
            @ P8
            @ P5 )
         => ( ( domainp @ C @ B @ ( relcompp @ C @ A @ B @ A6 @ B4 ) )
            = P8 ) ) ) ) ).

% pcr_Domainp_par_left_total
thf(fact_243_fun_Orel__compp,axiom,
    ! [A: $tType,D: $tType,C: $tType,B: $tType,R: A > B > $o,S: B > C > $o] :
      ( ( bNF_rel_fun @ D @ D @ A @ C
        @ ^ [Y3: D,Z3: D] : Y3 = Z3
        @ ( relcompp @ A @ B @ C @ R @ S ) )
      = ( relcompp @ ( D > A ) @ ( D > B ) @ ( D > C )
        @ ( bNF_rel_fun @ D @ D @ A @ B
          @ ^ [Y3: D,Z3: D] : Y3 = Z3
          @ R )
        @ ( bNF_rel_fun @ D @ D @ B @ C
          @ ^ [Y3: D,Z3: D] : Y3 = Z3
          @ S ) ) ) ).

% fun.rel_compp
thf(fact_244_bi__total__OO,axiom,
    ! [A: $tType,C: $tType,B: $tType,A6: A > B > $o,B4: B > C > $o] :
      ( ( bi_total @ A @ B @ A6 )
     => ( ( bi_total @ B @ C @ B4 )
       => ( bi_total @ A @ C @ ( relcompp @ A @ B @ C @ A6 @ B4 ) ) ) ) ).

% bi_total_OO
thf(fact_245_eq__comp__r,axiom,
    ! [A: $tType,R: A > A > $o] :
      ( ( relcompp @ A @ A @ A
        @ ^ [Y3: A,Z3: A] : Y3 = Z3
        @ ( relcompp @ A @ A @ A @ R
          @ ^ [Y3: A,Z3: A] : Y3 = Z3 ) )
      = R ) ).

% eq_comp_r
thf(fact_246_process_Orel__compp,axiom,
    ! [A: $tType,C: $tType,B: $tType,R: A > B > $o,S: B > C > $o] :
      ( ( proces749077512rocess @ A @ C @ ( relcompp @ A @ B @ C @ R @ S ) )
      = ( relcompp @ ( proces634752977rocess @ A ) @ ( proces634752977rocess @ B ) @ ( proces634752977rocess @ C ) @ ( proces749077512rocess @ A @ B @ R ) @ ( proces749077512rocess @ B @ C @ S ) ) ) ).

% process.rel_compp
thf(fact_247_sup2E,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o,B4: A > B > $o,X: A,Y: B] :
      ( ( sup_sup @ ( A > B > $o ) @ A6 @ B4 @ X @ Y )
     => ( ~ ( A6 @ X @ Y )
       => ( B4 @ X @ Y ) ) ) ).

% sup2E
thf(fact_248_sup2I1,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o,X: A,Y: B,B4: A > B > $o] :
      ( ( A6 @ X @ Y )
     => ( sup_sup @ ( A > B > $o ) @ A6 @ B4 @ X @ Y ) ) ).

% sup2I1
thf(fact_249_sup2I2,axiom,
    ! [A: $tType,B: $tType,B4: A > B > $o,X: A,Y: B,A6: A > B > $o] :
      ( ( B4 @ X @ Y )
     => ( sup_sup @ ( A > B > $o ) @ A6 @ B4 @ X @ Y ) ) ).

% sup2I2
thf(fact_250_reflclp__idemp,axiom,
    ! [A: $tType,P5: A > A > $o] :
      ( ( sup_sup @ ( A > A > $o )
        @ ( sup_sup @ ( A > A > $o ) @ P5
          @ ^ [Y3: A,Z3: A] : Y3 = Z3 )
        @ ^ [Y3: A,Z3: A] : Y3 = Z3 )
      = ( sup_sup @ ( A > A > $o ) @ P5
        @ ^ [Y3: A,Z3: A] : Y3 = Z3 ) ) ).

% reflclp_idemp
thf(fact_251_if__prs,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( map_fun @ $o @ $o @ ( A > A > A ) @ ( B > B > B ) @ ( id @ $o ) @ ( map_fun @ B @ A @ ( A > A ) @ ( B > B ) @ Rep @ ( map_fun @ B @ A @ A @ B @ Rep @ Abs ) ) @ ( if @ A ) )
        = ( if @ B ) ) ) ).

% if_prs
thf(fact_252_id__transfer,axiom,
    ! [A: $tType,B: $tType,A6: A > B > $o] : ( bNF_rel_fun @ A @ B @ A @ B @ A6 @ A6 @ ( id @ A ) @ ( id @ B ) ) ).

% id_transfer
thf(fact_253_id__rsp,axiom,
    ! [A: $tType,B: $tType,R: A > B > $o] : ( bNF_rel_fun @ A @ B @ A @ B @ R @ R @ ( id @ A ) @ ( id @ B ) ) ).

% id_rsp
thf(fact_254_identity__quotient3,axiom,
    ! [A: $tType] :
      ( quotient3 @ A @ A
      @ ^ [Y3: A,Z3: A] : Y3 = Z3
      @ ( id @ A )
      @ ( id @ A ) ) ).

% identity_quotient3
thf(fact_255_id__prs,axiom,
    ! [A: $tType,B: $tType,R: A > A > $o,Abs: A > B,Rep: B > A] :
      ( ( quotient3 @ A @ B @ R @ Abs @ Rep )
     => ( ( map_fun @ B @ A @ A @ B @ Rep @ Abs @ ( id @ A ) )
        = ( id @ B ) ) ) ).

% id_prs

%----Type constructors (6)
thf(tcon_fun___Lattices_Osemilattice__sup,axiom,
    ! [A9: $tType,A10: $tType] :
      ( ( semilattice_sup @ A10 @ ( type2 @ A10 ) )
     => ( semilattice_sup @ ( A9 > A10 ) @ ( type2 @ ( A9 > A10 ) ) ) ) ).

thf(tcon_fun___Lattices_Olattice,axiom,
    ! [A9: $tType,A10: $tType] :
      ( ( lattice @ A10 @ ( type2 @ A10 ) )
     => ( lattice @ ( A9 > A10 ) @ ( type2 @ ( A9 > A10 ) ) ) ) ).

thf(tcon_Set_Oset___Lattices_Osemilattice__sup_1,axiom,
    ! [A9: $tType] : ( semilattice_sup @ ( set @ A9 ) @ ( type2 @ ( set @ A9 ) ) ) ).

thf(tcon_Set_Oset___Lattices_Olattice_2,axiom,
    ! [A9: $tType] : ( lattice @ ( set @ A9 ) @ ( type2 @ ( set @ A9 ) ) ) ).

thf(tcon_HOL_Obool___Lattices_Osemilattice__sup_3,axiom,
    semilattice_sup @ $o @ ( type2 @ $o ) ).

thf(tcon_HOL_Obool___Lattices_Olattice_4,axiom,
    lattice @ $o @ ( type2 @ $o ) ).

%----Helper facts (3)
thf(help_If_3_1_T,axiom,
    ! [P5: $o] :
      ( ( P5 = $true )
      | ( P5 = $false ) ) ).

thf(help_If_2_1_T,axiom,
    ! [A: $tType,X: A,Y: A] :
      ( ( if @ A @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_T,axiom,
    ! [A: $tType,X: A,Y: A] :
      ( ( if @ A @ $true @ X @ Y )
      = X ) ).

%----Conjectures (1)
thf(conj_0,conjecture,
    p = p2 ).

%------------------------------------------------------------------------------